Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
igtl::QuaternionTrackingDataElement Class Reference

#include <igtlQuaternionTrackingDataMessage.h>

Inheritance diagram for igtl::QuaternionTrackingDataElement:
Inheritance graph
[legend]
Collaboration diagram for igtl::QuaternionTrackingDataElement:
Collaboration graph
[legend]

Public Types

enum  {
  TYPE_TRACKER = 1 ,
  TYPE_6D = 2 ,
  TYPE_3D = 3 ,
  TYPE_5D = 4
}
 
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef QuaternionTrackingDataElement Self
 
typedef Object Superclass
 

Public Member Functions

virtual LightObject::Pointer CreateAnother () const
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
virtual void Delete ()
 
bool GetDebug () const
 
const charGetName ()
 
virtual const charGetNameOfClass () const
 
void GetPosition (float *px, float *py, float *pz)
 
void GetPosition (float p[3])
 
void GetQuaternion (float *qx, float *qy, float *qz, float *w)
 
void GetQuaternion (float q[4])
 
virtual int GetReferenceCount () const
 
igtlUint8 GetType ()
 
 igtlNewMacro (igtl::QuaternionTrackingDataElement)
 
 igtlTypeMacro (igtl::QuaternionTrackingDataElement, igtl::Object)
 
 igtlTypeMacro (Object, LightObject)
 
void Print (std::ostream &os) const
 
virtual void Register () const
 
void SetDebug (bool debugFlag) const
 
int SetName (const char *name)
 
void SetPosition (float p[3])
 
void SetPosition (float px, float py, float pz)
 
void SetQuaternion (float q[4])
 
void SetQuaternion (float qx, float qy, float qz, float w)
 
virtual void SetReferenceCount (int)
 
int SetType (igtlUint8 type)
 
virtual void UnRegister () const
 

Static Public Member Functions

static void BreakOnError ()
 
static Pointer New ()
 

Protected Member Functions

 QuaternionTrackingDataElement ()
 
 ~QuaternionTrackingDataElement ()
 

Protected Attributes

std::string m_Name
 
igtlFloat32 m_position [3]
 
igtlFloat32 m_quaternion [4]
 
igtlUint8 m_Type
 
volatile int m_ReferenceCount
 
SimpleFastMutexLock m_ReferenceCountLock
 
virtual void PrintHeader (std::ostream &os) const
 
virtual void PrintTrailer (std::ostream &os) const
 
virtual void PrintSelf (std::ostream &os) const
 
static void SetGlobalWarningDisplay (bool flag)
 
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 

Detailed Description

A class to manage tracking data as a quaternion used in the QTDATA message type. A QuaternionTrackingDataElement class instance holds tracking data for 1 tracking device.

Definition at line 32 of file igtlQuaternionTrackingDataMessage.h.

Member Typedef Documentation

◆ ConstPointer

Definition at line 38 of file igtlQuaternionTrackingDataMessage.h.

◆ Pointer

Definition at line 37 of file igtlQuaternionTrackingDataMessage.h.

◆ Self

Definition at line 35 of file igtlQuaternionTrackingDataMessage.h.

◆ Superclass

Definition at line 36 of file igtlQuaternionTrackingDataMessage.h.

Member Enumeration Documentation

◆ anonymous enum

Tracking data type. TYPE_TRACKER: Tracker TYPE_6D: 6D instrument: (regular instrument) TYPE_3D: 3D instrument (only tip of the instrument defined) TYPE_5D: 5D instrument (tip and handle are defined, but not the normal vector)

Enumerator
TYPE_TRACKER 
TYPE_6D 
TYPE_3D 
TYPE_5D 

Definition at line 48 of file igtlQuaternionTrackingDataMessage.h.

Constructor & Destructor Documentation

◆ QuaternionTrackingDataElement()

igtl::QuaternionTrackingDataElement::QuaternionTrackingDataElement ( )
protected

◆ ~QuaternionTrackingDataElement()

igtl::QuaternionTrackingDataElement::~QuaternionTrackingDataElement ( )
protected

Member Function Documentation

◆ BreakOnError()

static void igtl::LightObject::BreakOnError ( )
staticinherited

This method is called when igtlExceptionMacro executes. It allows the debugger to break on error.

◆ CreateAnother()

virtual LightObject::Pointer igtl::Object::CreateAnother ( ) const
virtualinherited

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from igtl::LightObject.

◆ DebugOff()

virtual void igtl::Object::DebugOff ( ) const
virtualinherited

Turn debugging output off.

◆ DebugOn()

virtual void igtl::Object::DebugOn ( ) const
virtualinherited

Turn debugging output on.

◆ Delete()

virtual void igtl::LightObject::Delete ( )
virtualinherited

Delete an igtl object. This method should always be used to delete an object when the new operator was used to create it. Using the C delete method will not work with reference counting.

◆ GetDebug()

bool igtl::Object::GetDebug ( ) const
inherited

Get the value of the debug flag.

◆ GetGlobalWarningDisplay()

static bool igtl::Object::GetGlobalWarningDisplay ( )
staticinherited

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

◆ GetName()

const char * igtl::QuaternionTrackingDataElement::GetName ( )
inline

Gets the name of the instrument/tracker.

Definition at line 61 of file igtlQuaternionTrackingDataMessage.h.

◆ GetNameOfClass()

virtual const char * igtl::LightObject::GetNameOfClass ( ) const
inlinevirtualinherited

Return the name of this class as a string. Used by the object factory (implemented in New()) to instantiate objects of a named type. Also used for debugging and other output information.

Definition at line 84 of file igtlLightObject.h.

◆ GetPosition() [1/2]

void igtl::QuaternionTrackingDataElement::GetPosition ( float px,
float py,
float pz 
)

Gets the position. The function substitutes the xyz coordinates in 'px', 'py', and 'pz'.

◆ GetPosition() [2/2]

void igtl::QuaternionTrackingDataElement::GetPosition ( float  p[3])

Gets the position. The function substitutes 3-element array of x, y and z coordinates in 'p'.

◆ GetQuaternion() [1/2]

void igtl::QuaternionTrackingDataElement::GetQuaternion ( float qx,
float qy,
float qz,
float w 
)

Gets the quaternion. The function substitutes the elements of the quaternion in 'qx', 'qy', 'qz' and 'qw'.

◆ GetQuaternion() [2/2]

void igtl::QuaternionTrackingDataElement::GetQuaternion ( float  q[4])

Gets the quaternion. The function substitutes the array of elements of the quaternion in 'q'.

◆ GetReferenceCount()

virtual int igtl::LightObject::GetReferenceCount ( ) const
inlinevirtualinherited

Gets the reference count on this object.

Definition at line 110 of file igtlLightObject.h.

◆ GetType()

igtlUint8 igtl::QuaternionTrackingDataElement::GetType ( )
inline

Gets the type of the instrument/tracker.

Definition at line 67 of file igtlQuaternionTrackingDataMessage.h.

◆ GlobalWarningDisplayOff()

static void igtl::Object::GlobalWarningDisplayOff ( )
inlinestaticinherited

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Definition at line 116 of file igtlObject.h.

◆ GlobalWarningDisplayOn()

static void igtl::Object::GlobalWarningDisplayOn ( )
inlinestaticinherited

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Definition at line 114 of file igtlObject.h.

◆ igtlNewMacro()

igtl::QuaternionTrackingDataElement::igtlNewMacro ( igtl::QuaternionTrackingDataElement  )

◆ igtlTypeMacro() [1/2]

igtl::QuaternionTrackingDataElement::igtlTypeMacro ( igtl::QuaternionTrackingDataElement  ,
igtl::Object   
)

◆ igtlTypeMacro() [2/2]

igtl::Object::igtlTypeMacro ( Object  ,
LightObject   
)
inherited

Standard part of all igtl objects.

◆ New()

static Pointer igtl::Object::New ( )
staticinherited

Method for creation through the object factory.

◆ Print()

void igtl::LightObject::Print ( std::ostream &  os) const
inherited

Cause the object to print itself out.

◆ PrintHeader()

virtual void igtl::LightObject::PrintHeader ( std::ostream &  os) const
protectedvirtualinherited

Number of uses of this object by other objects.

◆ PrintSelf()

virtual void igtl::Object::PrintSelf ( std::ostream &  os) const
protectedvirtualinherited

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from igtl::LightObject.

Reimplemented in igtl::ClientSocket, igtl::FastMutexLock, igtl::MultiThreader, igtl::MutexLock, igtl::ObjectFactoryBase, igtl::ServerSocket, igtl::Socket, and igtl::TimeStamp.

◆ PrintTrailer()

virtual void igtl::LightObject::PrintTrailer ( std::ostream &  os) const
protectedvirtualinherited

Number of uses of this object by other objects.

◆ Register()

virtual void igtl::Object::Register ( ) const
virtualinherited

Return this objects modified time.
Update the modification time for this object. Many filters rely on the modification time to determine if they need to recompute their data.
Increase the reference count (mark as used by another object).

Reimplemented from igtl::LightObject.

◆ SetDebug()

void igtl::Object::SetDebug ( bool  debugFlag) const
inherited

Set the value of the debug flag. A non-zero value turns debugging on.

◆ SetGlobalWarningDisplay()

static void igtl::Object::SetGlobalWarningDisplay ( bool  flag)
staticinherited

This is a global flag that controls whether any debug, warning or error messages are displayed.

◆ SetName()

int igtl::QuaternionTrackingDataElement::SetName ( const char name)

Sets the name of the instrument/tracker.

◆ SetPosition() [1/2]

void igtl::QuaternionTrackingDataElement::SetPosition ( float  p[3])

Sets the position by 3-element array of x, y, and z coordinates.

◆ SetPosition() [2/2]

void igtl::QuaternionTrackingDataElement::SetPosition ( float  px,
float  py,
float  pz 
)

Sets the position by x, y, and z coordinates.

◆ SetQuaternion() [1/2]

void igtl::QuaternionTrackingDataElement::SetQuaternion ( float  q[4])

Sets the quaternion by 4-element array.

◆ SetQuaternion() [2/2]

void igtl::QuaternionTrackingDataElement::SetQuaternion ( float  qx,
float  qy,
float  qz,
float  w 
)

Sets the quaternion by elements of the quaternion (x, y, z and w).

◆ SetReferenceCount()

virtual void igtl::Object::SetReferenceCount ( int  )
virtualinherited

Sets the reference count (use with care)

Reimplemented from igtl::LightObject.

◆ SetType()

int igtl::QuaternionTrackingDataElement::SetType ( igtlUint8  type)

Sets the type of the instrument/tracker.

◆ UnRegister()

virtual void igtl::Object::UnRegister ( ) const
virtualinherited

Decrease the reference count (release by another object).

Reimplemented from igtl::LightObject.

Member Data Documentation

◆ m_Name

std::string igtl::QuaternionTrackingDataElement::m_Name
protected

Name / description (< 20 bytes)

Definition at line 100 of file igtlQuaternionTrackingDataMessage.h.

◆ m_position

igtlFloat32 igtl::QuaternionTrackingDataElement::m_position[3]
protected

position (x, y, z)

Definition at line 106 of file igtlQuaternionTrackingDataMessage.h.

◆ m_quaternion

igtlFloat32 igtl::QuaternionTrackingDataElement::m_quaternion[4]
protected

orientation as quaternion (qx, qy, qz, w)

Definition at line 109 of file igtlQuaternionTrackingDataMessage.h.

◆ m_ReferenceCount

volatile int igtl::LightObject::m_ReferenceCount
mutableprotectedinherited

Number of uses of this object by other objects.

Definition at line 131 of file igtlLightObject.h.

◆ m_ReferenceCountLock

SimpleFastMutexLock igtl::LightObject::m_ReferenceCountLock
mutableprotectedinherited

Mutex lock to protect modification to the reference count

Definition at line 134 of file igtlLightObject.h.

◆ m_Type

igtlUint8 igtl::QuaternionTrackingDataElement::m_Type
protected

Tracking data type (TYPE_TRACKER, TYPE_6D, TYPE_3D, TYPE_5D)

Definition at line 103 of file igtlQuaternionTrackingDataMessage.h.


The documentation for this class was generated from the following file:

Generated for OpenIGTLink by Doxygen 1.9.8 written by Dimitri van Heesch, © 1997-2012