18 #ifndef __igstkGroupObject_h
19 #define __igstkGroupObject_h
23 #include "itkGroupSpatialObject.h"
51 typedef itk::GroupSpatialObject<3> GroupSpatialObjectType;
54 unsigned long GetNumberOfChildren()
const;
73 virtual void PrintSelf( std::ostream& os, itk::Indent indent )
const;
78 GroupSpatialObjectType::Pointer m_GroupSpatialObject;
80 typedef std::vector< SpatialObject::Pointer > ChildrenContainerType;
82 ChildrenContainerType m_ChildrenArray;
85 igstkDeclareInputMacro( AddChildValid );
86 igstkDeclareInputMacro( AddChildInvalid );
87 igstkDeclareInputMacro( GetChildValid );
88 igstkDeclareInputMacro( GetChildInvalid );
91 igstkDeclareStateMacro( EmptyGroup );
92 igstkDeclareStateMacro( NonEmptyGroup );
95 void AddChildProcessing();
96 void GetChildProcessing();
97 void ReportNoChildAvailableProcessing();
103 void ReportInvalidRequestProcessing();
107 unsigned long m_ChildIdToGet;
112 #endif // __igstkGroupObject_h
Geometrical abstraction of physical objects present in the surgical scene.
Implements the 3-dimensional Group structure.
void RequestGetChild(unsigned long childId)
Request to get the child identified with a given childId number.
#define igstkStandardClassTraitsMacro(classname, superclassname)
Convenience macro for traits of a non-templated class.
virtual void PrintSelf(std::ostream &os, itk::Indent indent) const
Print object information.
~GroupObject(void)
Destructor.
defines standard system-wide macros, constants, and other common parameters in the IGSTK Library...
GroupObject(void)
Constructor.
void RequestAddChild(const Transform &transform, SpatialObject *child)
Request Adding a SpatialObject to the list of children.