CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxToolNull.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 #ifndef CXTOOLNULL_H
12 #define CXTOOLNULL_H
13 
14 #include "cxTool.h"
15 
16 namespace cx
17 {
18 
23 class cxResource_EXPORT ToolNull: public Tool
24 {
25 public:
26  virtual ~ToolNull() {}
27 
28  virtual std::set<Type> getTypes() const;
29  virtual vtkPolyDataPtr getGraphicsPolyData() const;
30  virtual TimedTransformMapPtr getPositionHistory();
31  virtual ToolPositionMetadata getMetadata() const;
32  virtual const std::map<double, ToolPositionMetadata>& getMetadataHistory();
33 
34  virtual bool getVisible() const;
35  virtual bool isInitialized() const;
36 
37  virtual QString getUid() const;
38  virtual QString getName() const;
39 
40  virtual bool isCalibrated() const;
41  virtual Transform3D getCalibration_sMt() const;
42  virtual void setCalibration_sMt(Transform3D calibration);
43 
44  virtual ProbePtr getProbe() const;
45  virtual double getTimestamp() const;
46  virtual void printSelf(std::ostream &os, Indent indent);
47 
48  virtual double getTooltipOffset() const;
49  virtual void setTooltipOffset(double val);
50  virtual std::map<QString, Vector3D> getReferencePoints() const;
51  virtual bool hasReferencePointWithId(int id);
52 
53  virtual TimedTransformMap getSessionHistory(double startTime, double stopTime);
54  virtual Transform3D get_prMt() const;
55 
56  virtual void resetTrackingPositionFilter(TrackingPositionFilterPtr filter);
57 
58  virtual void set_prMt(const Transform3D& prMt, double timestamp);
59  virtual void setVisible(bool vis);
60 
61  virtual ToolPtr getBaseTool();
62 
63  virtual bool isNull();
64  static ToolPtr getNullObject();
65 
66 private:
67  std::map<double, ToolPositionMetadata> mMetadata;
68 };
69 
70 } // namespace cx
71 
72 #endif // CXTOOLNULL_H
Interface to a tool, i.e. a pointer, US probe or similar.
Definition: cxTool.h:61
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
virtual ~ToolNull()
Definition: cxToolNull.h:26
boost::shared_ptr< Probe > ProbePtr
Definition: cxProbe.h:72
boost::shared_ptr< TimedTransformMap > TimedTransformMapPtr
Definition: cxTool.h:36
Formatting class for debug printing of the ssc library.
Definition: cxIndent.h:28
vtkSmartPointer< vtkPolyData > vtkPolyDataPtr
boost::shared_ptr< class TrackingPositionFilter > TrackingPositionFilterPtr
Definition: cxTool.h:37
std::map< double, Transform3D > TimedTransformMap
Namespace for all CustusX production code.
boost::shared_ptr< class Tool > ToolPtr