IGSTK
igstkMeshObjectRepresentation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Image Guided Surgery Software Toolkit
4  Module: $RCSfile: igstkMeshObjectRepresentation.h,v $
5  Language: C++
6  Date: $Date: 2008-02-11 01:41:50 $
7  Version: $Revision: 1.12 $
8 
9  Copyright (c) ISC Insight Software Consortium. All rights reserved.
10  See IGSTKCopyright.txt or http://www.igstk.org/copyright.htm for details.
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notices for more information.
15 
16 =========================================================================*/
17 
18 #ifndef __igstkMeshObjectRepresentation_h
19 #define __igstkMeshObjectRepresentation_h
20 
21 #include "igstkMacros.h"
23 #include "igstkMeshObject.h"
24 #include "igstkStateMachine.h"
25 
26 namespace igstk
27 {
28 
42 : public ObjectRepresentation
43 {
44 
45 public:
46 
50 
51 public:
52 
54  typedef MeshObject MeshObjectType;
55 
57  Pointer Copy() const;
58 
60  void RequestSetMeshObject( const MeshObjectType * MeshObject );
61 
62 protected:
63 
65  virtual void PrintSelf( std::ostream& os, itk::Indent indent ) const;
66 
69 
72 
74  void CreateActors();
75 
76 private:
77 
79  MeshObjectType::ConstPointer m_MeshObject;
80 
82  virtual void UpdateRepresentationProcessing();
83 
86  void SetMeshObjectProcessing();
87 
89  void NoProcessing();
90 
91 private:
92 
94  igstkDeclareInputMacro( ValidMeshObject );
95  igstkDeclareInputMacro( NullMeshObject );
96 
98  igstkDeclareStateMacro( NullMeshObject );
99  igstkDeclareStateMacro( ValidMeshObject );
100 
101  MeshObjectType::ConstPointer m_MeshObjectToAdd;
102 
103 };
104 
105 
106 } // end namespace igstk
107 
108 #endif // __igstkMeshObjectRepresentation_h