CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxPointMetricRep.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 
12 
13 #ifndef CXPOINTMETRICREP_H_
14 #define CXPOINTMETRICREP_H_
15 
16 #include "cxResourceVisualizationExport.h"
17 
18 #include "cxDataMetricRep.h"
19 #include "cxGraphicalPrimitives.h"
20 #include "cxPointMetric.h"
21 #include "cxViewportListener.h"
22 
23 namespace cx
24 {
25 
26 typedef boost::shared_ptr<class PointMetricRep> PointMetricRepPtr;
27 
36 class cxResourceVisualization_EXPORT PointMetricRep: public DataMetricRep
37 {
38 Q_OBJECT
39 public:
40  static PointMetricRepPtr New(const QString& uid="");
41  virtual ~PointMetricRep() {}
42 
43  void setPointMetric(PointMetricPtr point);
44  PointMetricPtr getPointMetric();
45  virtual QString getType() const { return "PointMetricRep"; }
46 
47 protected:
48  virtual void addRepActorsToViewRenderer(ViewPtr view);
49  virtual void removeRepActorsFromViewRenderer(ViewPtr view);
50 
51  virtual void clear();
52  virtual void rescale();
53  virtual void onModifiedStartRender();
54 
55 private:
57 
58  GraphicalPoint3DPtr mGraphicalPoint;
59  ViewportListenerPtr mViewportListener;
60 };
61 
62 }
63 
64 #endif /* CXPOINTMETRICREP_H_ */
boost::shared_ptr< class GraphicalPoint3D > GraphicalPoint3DPtr
boost::shared_ptr< class ViewportListener > ViewportListenerPtr
virtual QString getType() const
Base class for all Data Metric reps.
boost::shared_ptr< class View > ViewPtr
virtual ~PointMetricRep()
constructor
boost::shared_ptr< class PointMetricRep > PointMetricRepPtr
Namespace for all CustusX production code.
boost::shared_ptr< class PointMetric > PointMetricPtr