37 #include "cxResourceExport.h"
42 #include <boost/shared_ptr.hpp>
69 class cxResource_EXPORT
Tool:
public QObject
73 Tool(
const QString& uid=
"",
const QString& name =
"");
96 virtual std::set<Type> getTypes()
const = 0;
102 return this->getTypes().count(type);
107 virtual bool getVisible()
const = 0;
110 virtual QString getUid()
const = 0;
111 virtual QString getName()
const = 0;
113 virtual bool isCalibrated()
const = 0;
114 virtual Transform3D getCalibration_sMt()
const = 0;
118 virtual double getTimestamp()
const = 0;
119 virtual void printSelf(std::ostream &os,
Indent indent) { Q_UNUSED(os); Q_UNUSED(indent); }
126 virtual TimedTransformMap getSessionHistory(
double startTime,
double stopTime) = 0;
131 virtual void set_prMt(
const Transform3D& prMt,
double timestamp=-1) = 0;
132 virtual void setVisible(
bool vis) = 0;
134 virtual bool isNull() = 0;
135 static ToolPtr getNullObject();
142 void toolTransformAndTimestamp(
Transform3D matrix,
double timestamp);
143 void toolVisible(
bool visible);
144 void tooltipOffset(
double offset);
145 void toolProbeSector();
152 typedef boost::shared_ptr<Tool>
ToolPtr;
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
vtkSmartPointer< class vtkPolyData > vtkPolyDataPtr
boost::shared_ptr< Probe > ProbePtr
boost::shared_ptr< TimedTransformMap > TimedTransformMapPtr
Formatting class for debug printing of the ssc library.
boost::shared_ptr< class TrackingPositionFilter > TrackingPositionFilterPtr
std::map< double, Transform3D > TimedTransformMap
boost::shared_ptr< class Tool > ToolPtr