CustusX  2021.04.22-dev+develop.337f9
An IGT application
cx::ToolImpl Class Reference

Common functionality for Tool subclasses. More...

#include <cxToolImpl.h>

Inheritance diagram for cx::ToolImpl:
cx::Tool cx::BronchoscopyTool cx::DummyTool cx::ManualTool cx::OpenIGTLinkTool cx::PlaybackTool cx::ToolUsingIGSTK cx::ManualToolAdapter

Public Member Functions

 ToolImpl (const QString &uid="", const QString &name="")
 
virtual ~ToolImpl ()
 
virtual TimedTransformMapPtr getPositionHistory ()
 get historical positions More...
 
virtual TimedTransformMap getSessionHistory (double startTime, double stopTime)
 
virtual Transform3D get_prMt () const
 
virtual ToolPositionMetadata getMetadata () const
 
virtual const std::map< double, ToolPositionMetadata > & getMetadataHistory ()
 
virtual double getTooltipOffset () const
 get a virtual offset extending from the tool tip. More...
 
virtual void setTooltipOffset (double val)
 set a virtual offset extending from the tool tip. More...
 
virtual void resetTrackingPositionFilter (TrackingPositionFilterPtr filter)
 
virtual bool isNull ()
 
virtual void addXml (QDomNode &dataNode)
 
virtual void parseXml (QDomNode &dataNode)
 
virtual vtkPolyDataPtr getGraphicsPolyData () const
 get geometric 3D description More...
 
virtual bool hasReferencePointWithId (int id)
 
- Public Member Functions inherited from cx::Tool
 Tool (const QString &uid="", const QString &name="")
 
virtual ~Tool ()
 
virtual bool hasType (Type type) const
 
virtual bool getVisible () const =0
 
virtual bool isInitialized () const
 
virtual QString getUid () const =0
 
virtual QString getName () const =0
 
virtual bool isCalibrated () const =0
 a tool may not be calibrated, then no tracking is allowed More...
 
virtual Transform3D getCalibration_sMt () const =0
 get the calibration transform from tool space to sensor space (where the spheres or similar live) More...
 
virtual void setCalibration_sMt (Transform3D calibration)
 requests to use the calibration and replaces the tools calibration file More...
 
virtual ProbePtr getProbe () const
 additional information if the tool represents an US Probe. Extends getProbeSector() More...
 
virtual double getTimestamp () const =0
 latest valid timestamp for the position matrix. 0 means indeterminate (for f.ex. manual tools) More...
 
virtual void printSelf (std::ostream &os, Indent indent)
 dump internal debug data More...
 
virtual void setVisible (bool vis)=0
 if available for this type, set visibility More...
 

Protected Member Functions

virtual void set_prMt (const Transform3D &prMt, double timestamp)
 if available for this type, set pos, ts<0 means use current time More...
 
void createToolGraphic ()
 
virtual std::set< TypegetTypes () const
 
virtual std::map< int, Vector3DgetReferencePoints () const
 Get the optional reference points from this tool. More...
 
virtual ToolFileParser::ToolInternalStructurePtr getToolFileToolStructure () const
 

Protected Attributes

TimedTransformMapPtr mPositionHistory
 
Transform3D m_prMt
 the transform from the tool to the patient reference More...
 
TrackingPositionFilterPtr mTrackingPositionFilter
 
std::map< double, ToolPositionMetadatamMetadata
 
vtkPolyDataPtr mPolyData
 the polydata used to represent the tool graphically More...
 
- Protected Attributes inherited from cx::Tool
QString mUid
 
QString mName
 

Additional Inherited Members

- Public Types inherited from cx::Tool
enum  State { tsNONE =0, tsCONFIGURED, tsINITIALIZED, tsTRACKING }
 
enum  Type {
  TOOL_NONE, TOOL_REFERENCE, TOOL_MANUAL, TOOL_POINTER,
  TOOL_US_PROBE, TOOL_MICROSCOPE
}
 
- Signals inherited from cx::Tool
void toolTransformAndTimestamp (Transform3D matrix, double timestamp)
 
void toolVisible (bool visible)
 
void tooltipOffset (double offset)
 
void toolProbeSector ()
 
void tps (int)
 
- Static Public Member Functions inherited from cx::Tool
static vtkPolyDataPtr createDefaultPolyDataCone ()
 
static ToolPtr getNullObject ()
 

Detailed Description

Common functionality for Tool subclasses.

Date
2014-02-21
Author
christiana

Definition at line 30 of file cxToolImpl.h.

Constructor & Destructor Documentation

cx::ToolImpl::ToolImpl ( const QString &  uid = "",
const QString &  name = "" 
)
explicit

Definition at line 24 of file cxToolImpl.cpp.

cx::ToolImpl::~ToolImpl ( )
virtual

Definition at line 33 of file cxToolImpl.cpp.

Member Function Documentation

virtual void cx::ToolImpl::addXml ( QDomNode &  dataNode)
inlinevirtual

Reimplemented in cx::ToolUsingIGSTK.

Definition at line 50 of file cxToolImpl.h.

void cx::ToolImpl::createToolGraphic ( )
protected

Definition at line 117 of file cxToolImpl.cpp.

Transform3D cx::ToolImpl::get_prMt ( ) const
virtual

Implements cx::Tool.

Reimplemented in cx::BronchoscopyTool, and cx::PlaybackTool.

Definition at line 92 of file cxToolImpl.cpp.

vtkPolyDataPtr cx::ToolImpl::getGraphicsPolyData ( ) const
virtual

get geometric 3D description

Implements cx::Tool.

Reimplemented in cx::BronchoscopyTool, cx::ManualTool, cx::ManualToolAdapter, and cx::PlaybackTool.

Definition at line 135 of file cxToolImpl.cpp.

ToolPositionMetadata cx::ToolImpl::getMetadata ( ) const
virtual

Implements cx::Tool.

Definition at line 53 of file cxToolImpl.cpp.

const std::map< double, ToolPositionMetadata > & cx::ToolImpl::getMetadataHistory ( )
virtual

Implements cx::Tool.

Definition at line 60 of file cxToolImpl.cpp.

TimedTransformMapPtr cx::ToolImpl::getPositionHistory ( )
virtual

get historical positions

Implements cx::Tool.

Reimplemented in cx::BronchoscopyTool, and cx::PlaybackTool.

Definition at line 78 of file cxToolImpl.cpp.

std::map< int, Vector3D > cx::ToolImpl::getReferencePoints ( ) const
protectedvirtual

Get the optional reference points from this tool.

Reimplemented from cx::Tool.

Reimplemented in cx::DummyTool, cx::BronchoscopyTool, cx::ManualTool, cx::PlaybackTool, and cx::ManualToolAdapter.

Definition at line 145 of file cxToolImpl.cpp.

TimedTransformMap cx::ToolImpl::getSessionHistory ( double  startTime,
double  stopTime 
)
virtual

Implements cx::Tool.

Reimplemented in cx::BronchoscopyTool, and cx::PlaybackTool.

Definition at line 83 of file cxToolImpl.cpp.

virtual ToolFileParser::ToolInternalStructurePtr cx::ToolImpl::getToolFileToolStructure ( ) const
inlineprotectedvirtual

Reimplemented in cx::ToolUsingIGSTK, and cx::OpenIGTLinkTool.

Definition at line 67 of file cxToolImpl.h.

double cx::ToolImpl::getTooltipOffset ( ) const
virtual

get a virtual offset extending from the tool tip.

Reimplemented from cx::Tool.

Reimplemented in cx::ToolUsingIGSTK, cx::BronchoscopyTool, cx::OpenIGTLinkTool, cx::ManualToolAdapter, and cx::PlaybackTool.

Definition at line 65 of file cxToolImpl.cpp.

std::set< Tool::Type > cx::ToolImpl::getTypes ( ) const
protectedvirtual

Implements cx::Tool.

Reimplemented in cx::DummyTool, cx::BronchoscopyTool, cx::ManualTool, cx::ManualToolAdapter, and cx::PlaybackTool.

Definition at line 38 of file cxToolImpl.cpp.

bool cx::ToolImpl::hasReferencePointWithId ( int  id)
virtual

Reimplemented from cx::Tool.

Reimplemented in cx::BronchoscopyTool, and cx::PlaybackTool.

Definition at line 140 of file cxToolImpl.cpp.

virtual bool cx::ToolImpl::isNull ( )
inlinevirtual

Implements cx::Tool.

Definition at line 48 of file cxToolImpl.h.

virtual void cx::ToolImpl::parseXml ( QDomNode &  dataNode)
inlinevirtual

Reimplemented in cx::ToolUsingIGSTK.

Definition at line 51 of file cxToolImpl.h.

void cx::ToolImpl::resetTrackingPositionFilter ( TrackingPositionFilterPtr  filter)
virtual

Implements cx::Tool.

Definition at line 112 of file cxToolImpl.cpp.

void cx::ToolImpl::set_prMt ( const Transform3D prMt,
double  timestamp 
)
protectedvirtual

if available for this type, set pos, ts<0 means use current time

Implements cx::Tool.

Reimplemented in cx::ToolUsingIGSTK, cx::BronchoscopyTool, cx::PlaybackTool, and cx::ManualTool.

Definition at line 97 of file cxToolImpl.cpp.

void cx::ToolImpl::setTooltipOffset ( double  val)
virtual

set a virtual offset extending from the tool tip.

Reimplemented from cx::Tool.

Reimplemented in cx::ToolUsingIGSTK, cx::BronchoscopyTool, cx::OpenIGTLinkTool, cx::ManualToolAdapter, and cx::PlaybackTool.

Definition at line 70 of file cxToolImpl.cpp.

Member Data Documentation

Transform3D cx::ToolImpl::m_prMt
protected

the transform from the tool to the patient reference

Definition at line 60 of file cxToolImpl.h.

std::map<double, ToolPositionMetadata> cx::ToolImpl::mMetadata
protected

Definition at line 62 of file cxToolImpl.h.

vtkPolyDataPtr cx::ToolImpl::mPolyData
protected

the polydata used to represent the tool graphically

Definition at line 63 of file cxToolImpl.h.

TimedTransformMapPtr cx::ToolImpl::mPositionHistory
protected

Definition at line 59 of file cxToolImpl.h.

TrackingPositionFilterPtr cx::ToolImpl::mTrackingPositionFilter
protected

Definition at line 61 of file cxToolImpl.h.


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