Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  
igtlObject.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: The OpenIGTLink Library
4  Language: C++
5  Web page: http://openigtlink.org/
6 
7  Copyright (c) Insight Software Consortium. All rights reserved.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 =========================================================================*/
14 /*=========================================================================
15 
16  Program: Insight Segmentation & Registration Toolkit
17  Module: $RCSfile: itkObject.h,v $
18  Language: C++
19  Date: $Date: 2008-12-22 19:05:42 -0500 (Mon, 22 Dec 2008) $
20  Version: $Revision: 3460 $
21 
22  Copyright (c) Insight Software Consortium. All rights reserved.
23  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
24 
25  Portions of this code are covered under the VTK copyright.
26  See VTKCopyright.txt or http://www.kitware.com/VTKCopyright.htm for details.
27 
28  This software is distributed WITHOUT ANY WARRANTY; without even
29  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
30  PURPOSE. See the above copyright notices for more information.
31 
32 =========================================================================*/
33 #ifndef __igtlObject_h
34 #define __igtlObject_h
35 
36 #include "igtlLightObject.h"
37 //#include "igtlTimeStamp.h"
38 //#include "igtlEventObject.h"
39 //#include "igtlMetaDataDictionary.h"
40 
41 #include "igtlConfigure.h"
42 
43 namespace igtl
44 {
45  //class SubjectImplementation;
46  //class Command;
47 
61 {
62 public:
64  typedef Object Self;
68 
70  static Pointer New();
71 
77  virtual LightObject::Pointer CreateAnother() const;
78 
81 
83  virtual void DebugOn() const;
84 
86  virtual void DebugOff() const;
87 
89  bool GetDebug() const;
90 
92  void SetDebug(bool debugFlag) const;
93 
95  // virtual unsigned long GetMTime() const;
96 
99  // virtual void Modified() const;
100 
102  virtual void Register() const;
103 
105  virtual void UnRegister() const;
106 
108  virtual void SetReferenceCount(int);
109 
112  static void SetGlobalWarningDisplay(bool flag);
113  static bool GetGlobalWarningDisplay();
119 
128 // unsigned long AddObserver(const EventObject & event, Command *);
129 // unsigned long AddObserver(const EventObject & event, Command *) const;
131 
137  //Command* GetCommand(unsigned long tag);
138 
140  //void InvokeEvent( const EventObject & );
141 
144  //void InvokeEvent( const EventObject & ) const;
145 
147  //void RemoveObserver(unsigned long tag);
148 
150  //void RemoveAllObservers();
151 
153  //bool HasObserver( const EventObject & event ) const;
154 
159  //MetaDataDictionary & GetMetaDataDictionary(void);
160 
164  //const MetaDataDictionary & GetMetaDataDictionary(void) const;
165 
169  //void SetMetaDataDictionary(const MetaDataDictionary & rhs);
170 
171 
172 protected:
173  Object();
174  virtual ~Object();
175 
180  virtual void PrintSelf(std::ostream& os) const;
181 
182  //bool PrintObservers(std::ostream& os) const;
183 
184 private:
185  Object(const Self&); //purposely not implemented
186  void operator=(const Self&); //purposely not implemented
187 
189  mutable bool m_Debug;
190 
192  // mutable TimeStamp m_MTime;
193 
195  static bool m_GlobalWarningDisplay;
196 
199  //SubjectImplementation* m_SubjectImplementation;
200 
208  //mutable MetaDataDictionary * m_MetaDataDictionary;
209 };
210 
211 } // end namespace igtl
212 
213 #endif
214 
SmartPointer< Self > Pointer
Definition: igtlObject.h:66
SmartPointer< const Self > ConstPointer
Definition: igtlObject.h:67
#define igtlTypeMacro(thisClass, superclass)
Definition: igtlMacro.h:486
LightObject Superclass
Definition: igtlObject.h:65
#define IGTLCommon_EXPORT
static void SetGlobalWarningDisplay(bool flag)
Object Self
Definition: igtlObject.h:64
Light weight base class for most igtl classes.
static void GlobalWarningDisplayOff()
Definition: igtlObject.h:116
Base class for most igtl classes.
Definition: igtlObject.h:60
static void GlobalWarningDisplayOn()
Definition: igtlObject.h:114

Generated at Wed Dec 4 2013 11:11:31 for OpenIGTLink by doxygen 1.8.5 written by Dimitri van Heesch, © 1997-2012