IGSTK
igstkBoxObjectRepresentation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Image Guided Surgery Software Toolkit
4  Module: $RCSfile: igstkBoxObjectRepresentation.h,v $
5  Language: C++
6  Date: $Date: 2008-02-11 01:41:50 $
7  Version: $Revision: 1.6 $
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 __igstkBoxObjectRepresentation_h
19 #define __igstkBoxObjectRepresentation_h
20 
21 #include "igstkMacros.h"
23 #include "igstkBoxObject.h"
24 #include "vtkCubeSource.h"
25 #include "igstkStateMachine.h"
26 
27 namespace igstk
28 {
29 
47 : public ObjectRepresentation
48 {
49 
50 public:
51 
54 
55 public:
56 
58  typedef BoxObject BoxSpatialObjectType;
59 
61  Pointer Copy() const;
62 
64  void RequestSetBoxObject( const BoxSpatialObjectType * boxObject );
65 
66 protected:
67 
69  virtual ~BoxObjectRepresentation( void );
70 
71  BoxObjectRepresentation(const Self&); //purposely not implemented
72  void operator=(const Self&); //purposely not implemented
73 
75  virtual void PrintSelf( std::ostream& os, itk::Indent indent ) const;
76 
78  void CreateActors();
79 
80 private:
81 
83  BoxSpatialObjectType::ConstPointer m_BoxSpatialObject;
84 
86  vtkCubeSource * m_BoxSource;
87 
89  virtual void UpdateRepresentationProcessing();
90 
93  void SetBoxObjectProcessing();
94 
97  void NoProcessing();
98 
99 private:
100 
102  igstkDeclareInputMacro( ValidBoxObject );
103  igstkDeclareInputMacro( NullBoxObject );
104 
106  igstkDeclareStateMacro( NullBoxObject );
107  igstkDeclareStateMacro( ValidBoxObject );
108 
109  BoxSpatialObjectType::ConstPointer m_BoxObjectToAdd;
110 
111 };
112 
113 
114 } // end namespace igstk
115 
116 #endif // __igstkBoxObjectRepresentation_h
This class represents a Box object.
Base class for all the IGSTK classes.
Definition: igstkObject.h:40
#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...
void CreateActors()
Create the VTK actors.
virtual void PrintSelf(std::ostream &os, itk::Indent indent) const
Print object information.
void RequestSetBoxObject(const BoxSpatialObjectType *boxObject)
Connect this representation class to the spatial object.
::itk::SmartPointer< Self > Pointer
Definition: igstkObject.h:50
virtual ~BoxObjectRepresentation(void)
This class represents a box object.
An abstract base class for all the igstk representation objects.
void operator=(const Self &)