IGSTK
igstkTubeObjectRepresentation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Image Guided Surgery Software Toolkit
4  Module: $RCSfile: igstkTubeObjectRepresentation.h,v $
5  Language: C++
6  Date: $Date: 2008-02-11 01:41:51 $
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 __igstkTubeObjectRepresentation_h
19 #define __igstkTubeObjectRepresentation_h
20 
21 #include "igstkMacros.h"
23 #include "igstkTubeObject.h"
24 #include "igstkStateMachine.h"
25 
26 namespace igstk
27 {
28 
42 : public ObjectRepresentation
43 {
44 
45 public:
46 
50 
51 public:
52 
53  typedef TubeObject TubeObjectType;
54 
56  Pointer Copy() const;
57 
59  void RequestSetTubeObject( const TubeObjectType * TubeObject );
60 
61 protected:
62 
65 
68 
70  virtual void PrintSelf( std::ostream& os, itk::Indent indent ) const;
71 
73  void CreateActors();
74 
75 private:
76 
78  TubeObjectType::ConstPointer m_TubeSpatialObject;
79 
81  virtual void UpdateRepresentationProcessing();
82 
85  void SetTubeObjectProcessing();
86 
88  void NoProcessing();
89 
90 private:
91 
93  igstkDeclareInputMacro( ValidTubeObject );
94  igstkDeclareInputMacro( NullTubeObject );
95 
97  igstkDeclareStateMacro( NullTubeObject );
98  igstkDeclareStateMacro( ValidTubeObject );
99 
100  TubeObjectType::ConstPointer m_TubeObjectToAdd;
101 
102 };
103 
104 
105 } // end namespace igstk
106 
107 #endif // __igstkTubeObjectRepresentation_h
void CreateActors()
Create the VTK actors.
virtual void PrintSelf(std::ostream &os, itk::Indent indent) const
Print object information.
#define igstkStandardClassTraitsMacro(classname, superclassname)
Convenience macro for traits of a non-templated class.
Definition: igstkMacros.h:275
defines standard system-wide macros, constants, and other common parameters in the IGSTK Library...
This class implements the representation a Tube object.
This class represents a Tube object.
::itk::SmartPointer< Self > Pointer
Definition: igstkObject.h:50
void RequestSetTubeObject(const TubeObjectType *TubeObject)
Connect this representation class to the spatial object.
~TubeObjectRepresentation(void)
Destructor.
An abstract base class for all the igstk representation objects.
TubeObjectRepresentation(void)
Constructor.