IGSTK
|
Encapsulates common logic for handling coordinate reference system calls on objects with CoordinateSystems. More...
#include <igstkCoordinateSystemDelegator.h>
Public Types | |
typedef igstk::CoordinateSystem | CoordinateSystemType |
Typedef for coordinate system. | |
![]() | |
typedef Object | Self |
General Typedefs. | |
typedef ::itk::Object | Superclass |
typedef ::itk::SmartPointer< Self > | Pointer |
typedef ::itk::SmartPointer < const Self > | ConstPointer |
typedef igstk::Logger | LoggerType |
Public Member Functions | |
igstkStandardClassTraitsMacro (CoordinateSystemDelegator, Object) template< class TParentPointer > void RequestSetTransformAndParent(const Transform &transformToParent | |
Macro with standard traits declarations. | |
void | RequestDetachFromParent () |
Detach from its parents. | |
template<class TTarget > | |
void | RequestComputeTransformTo (const TTarget &target) |
Tries to compute the transformation from this coordinate system to another coordinate system. | |
bool | IsCoordinateSystem (const CoordinateSystemType *) const |
Allows another object to verify which coordinate system an object owns. | |
void | PrintSelf (std::ostream &os, itk::Indent indent) const |
Print out object information. | |
void | SetName (const char *name) |
Set/Get the name of the coordinate system. | |
void | SetName (const std::string &name) |
const char * | GetName () const |
void | SetType (const char *type) |
Set/Get the type of the coordinate system. | |
void | SetType (const std::string &type) |
const char * | GetType () const |
![]() | |
virtual const char * | GetNameOfClass () const |
void | SetLogger (LoggerType *logger) |
Connect the Logger for this class. | |
void | RemoveObserver (unsigned long tag) const |
Protected Member Functions | |
CoordinateSystemDelegator () | |
~CoordinateSystemDelegator () | |
![]() | |
LoggerType * | GetLogger () const |
Object (void) | |
Constructor is protected in order to enforce the use of the New() operator. | |
virtual | ~Object (void) |
void | RegisterObservedObject (const ::igstk::Object *object, unsigned long tag) |
Register observed objects in an internal array so that they can be disconnected upon destruction. | |
void | RemoveFromObservedObjects () |
Remove observers that this object may have connected to other objects. |
Additional Inherited Members | |
![]() | |
static Pointer | New (void) |
Encapsulates common logic for handling coordinate reference system calls on objects with CoordinateSystems.
Most of the functionality is delegated to CoordinateSystem. This class is intended to be used inside classes like SpatialObject and View. This class delegates much of the core coordinate system connectivity and transformation work to the CoordinateSystem class.
The following diagram illustrates the state machine of the CoordinateSystemDelegator class
"CoordinateSystemDelegator State Machine Diagram"
"CoordinateSystemDelegator State Machine Diagram"Definition at line 48 of file igstkCoordinateSystemDelegator.h.
Typedef for coordinate system.
Definition at line 132 of file igstkCoordinateSystemDelegator.h.
|
protected |
|
protected |
igstk::CoordinateSystemDelegator::igstkStandardClassTraitsMacro | ( | CoordinateSystemDelegator | , |
Object | |||
) | const |
Macro with standard traits declarations.
This method implements the construction of a coordinate system graph by defining the parent of this object and the Transforms defining their relative position and orientation
|
inline |
Detach from its parents.
Definition at line 95 of file igstkCoordinateSystemDelegator.h.
|
inline |
Tries to compute the transformation from this coordinate system to another coordinate system.
This method is templated on the input and should allow computation of a transform to another object that internally has a CoordinateSystem.
Three types of events may be generated by this call: CoordinateSystemTransformToEvent CoordinateSystemTransformToNullTargetEvent CoordinateSystemTransformToDisconnectedEvent
First get the coordinate system from the target object.
Handle the response with event observers
Definition at line 112 of file igstkCoordinateSystemDelegator.h.
bool igstk::CoordinateSystemDelegator::IsCoordinateSystem | ( | const CoordinateSystemType * | ) | const |
Allows another object to verify which coordinate system an object owns.
This does not check that the coordinate systems are equivalent, but whether the instances of the coordinate systems are identical.
|
virtual |
Print out object information.
Reimplemented from igstk::Object.
void igstk::CoordinateSystemDelegator::SetName | ( | const char * | name | ) |
Set/Get the name of the coordinate system.
void igstk::CoordinateSystemDelegator::SetName | ( | const std::string & | name | ) |
const char* igstk::CoordinateSystemDelegator::GetName | ( | ) | const |
void igstk::CoordinateSystemDelegator::SetType | ( | const char * | type | ) |
Set/Get the type of the coordinate system.
void igstk::CoordinateSystemDelegator::SetType | ( | const std::string & | type | ) |
const char* igstk::CoordinateSystemDelegator::GetType | ( | ) | const |