CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxStream2DRep3D.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 #ifndef CX2DSTREAMREP3D_H
13 #define CX2DSTREAMREP3D_H
14 
15 #include "cxResourceVisualizationExport.h"
16 #include "cxRepImpl.h"
17 #include "cxForwardDeclarations.h"
18 
19 namespace cx
20 {
21 typedef boost::shared_ptr<class VideoSourceGraphics> VideoSourceGraphicsPtr;
22 
33 class cxResourceVisualization_EXPORT Stream2DRep3D : public RepImpl
34 {
35  Q_OBJECT
36 public:
37  static Stream2DRep3DPtr New(SpaceProviderPtr spaceProvider, const QString& uid = "");
38  virtual QString getType() const;
39  void setTrackedStream(TrackedStreamPtr trackedStream);
40  bool isReady();
41 protected:
42  virtual void addRepActorsToViewRenderer(ViewPtr view);
43  virtual void removeRepActorsFromViewRenderer(ViewPtr view);
44 private slots:
45  void trackedStreamChanged();
46 private:
47  Stream2DRep3D(SpaceProviderPtr spaceProvider);
48 
49  SpaceProviderPtr mSpaceProvider;
50  VideoSourceGraphicsPtr mRTStream;
51  TrackedStreamPtr mTrackedStream;
52 };
53 
54 } //cx
55 
56 #endif // CX2DSTREAMREP3D_H
boost::shared_ptr< class SpaceProvider > SpaceProviderPtr
boost::shared_ptr< class Stream2DRep3D > Stream2DRep3DPtr
boost::shared_ptr< class TrackedStream > TrackedStreamPtr
Display a stream as 2D in 3D.
boost::shared_ptr< class View > ViewPtr
boost::shared_ptr< class VideoSourceGraphics > VideoSourceGraphicsPtr
Default implementation of Rep.
Definition: cxRepImpl.h:42
Namespace for all CustusX production code.