Mercurial > hg > orthanc-stone
comparison Framework/Layers/IVolumeSlicer.h @ 728:8190213e2279 am-dev
Merged default into am-dev
author | Alain Mazy <am@osimis.io> |
---|---|
date | Tue, 21 May 2019 13:25:58 +0200 |
parents | 4f2416d519b4 |
children |
comparison
equal
deleted
inserted
replaced
690:f185cfcb72a0 | 728:8190213e2279 |
---|---|
26 #include "../../Framework/Messages/IObservable.h" | 26 #include "../../Framework/Messages/IObservable.h" |
27 #include "../../Framework/Messages/IMessage.h" | 27 #include "../../Framework/Messages/IMessage.h" |
28 #include "Core/Images/Image.h" | 28 #include "Core/Images/Image.h" |
29 #include <boost/shared_ptr.hpp> | 29 #include <boost/shared_ptr.hpp> |
30 | 30 |
31 namespace OrthancStone | 31 namespace Deprecated |
32 { | 32 { |
33 class IVolumeSlicer : public IObservable | 33 class IVolumeSlicer : public OrthancStone::IObservable |
34 { | 34 { |
35 public: | 35 public: |
36 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, GeometryReadyMessage, IVolumeSlicer); | 36 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, GeometryReadyMessage, IVolumeSlicer); |
37 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, GeometryErrorMessage, IVolumeSlicer); | 37 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, GeometryErrorMessage, IVolumeSlicer); |
38 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, ContentChangedMessage, IVolumeSlicer); | 38 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, ContentChangedMessage, IVolumeSlicer); |
39 | 39 |
40 class SliceContentChangedMessage : public OriginMessage<IVolumeSlicer> | 40 class SliceContentChangedMessage : public OrthancStone::OriginMessage<IVolumeSlicer> |
41 { | 41 { |
42 ORTHANC_STONE_MESSAGE(__FILE__, __LINE__); | 42 ORTHANC_STONE_MESSAGE(__FILE__, __LINE__); |
43 | 43 |
44 private: | 44 private: |
45 const Slice& slice_; | 45 const Deprecated::Slice& slice_; |
46 | 46 |
47 public: | 47 public: |
48 SliceContentChangedMessage(IVolumeSlicer& origin, | 48 SliceContentChangedMessage(IVolumeSlicer& origin, |
49 const Slice& slice) : | 49 const Deprecated::Slice& slice) : |
50 OriginMessage(origin), | 50 OriginMessage(origin), |
51 slice_(slice) | 51 slice_(slice) |
52 { | 52 { |
53 } | 53 } |
54 | 54 |
55 const Slice& GetSlice() const | 55 const Deprecated::Slice& GetSlice() const |
56 { | 56 { |
57 return slice_; | 57 return slice_; |
58 } | 58 } |
59 }; | 59 }; |
60 | 60 |
61 | 61 |
62 class LayerReadyMessage : public OriginMessage<IVolumeSlicer> | 62 class LayerReadyMessage : public OrthancStone::OriginMessage<IVolumeSlicer> |
63 { | 63 { |
64 ORTHANC_STONE_MESSAGE(__FILE__, __LINE__); | 64 ORTHANC_STONE_MESSAGE(__FILE__, __LINE__); |
65 | 65 |
66 public: | 66 public: |
67 class IRendererFactory : public boost::noncopyable | 67 class IRendererFactory : public boost::noncopyable |
74 virtual ILayerRenderer* CreateRenderer() const = 0; | 74 virtual ILayerRenderer* CreateRenderer() const = 0; |
75 }; | 75 }; |
76 | 76 |
77 private: | 77 private: |
78 const IRendererFactory& factory_; | 78 const IRendererFactory& factory_; |
79 const CoordinateSystem3D& slice_; | 79 const OrthancStone::CoordinateSystem3D& slice_; |
80 | 80 |
81 public: | 81 public: |
82 LayerReadyMessage(IVolumeSlicer& origin, | 82 LayerReadyMessage(IVolumeSlicer& origin, |
83 const IRendererFactory& rendererFactory, | 83 const IRendererFactory& rendererFactory, |
84 const CoordinateSystem3D& slice) : | 84 const OrthancStone::CoordinateSystem3D& slice) : |
85 OriginMessage(origin), | 85 OriginMessage(origin), |
86 factory_(rendererFactory), | 86 factory_(rendererFactory), |
87 slice_(slice) | 87 slice_(slice) |
88 { | 88 { |
89 } | 89 } |
91 ILayerRenderer* CreateRenderer() const | 91 ILayerRenderer* CreateRenderer() const |
92 { | 92 { |
93 return factory_.CreateRenderer(); | 93 return factory_.CreateRenderer(); |
94 } | 94 } |
95 | 95 |
96 const CoordinateSystem3D& GetSlice() const | 96 const OrthancStone::CoordinateSystem3D& GetSlice() const |
97 { | 97 { |
98 return slice_; | 98 return slice_; |
99 } | 99 } |
100 }; | 100 }; |
101 | 101 |
102 | 102 |
103 class LayerErrorMessage : public OriginMessage<IVolumeSlicer> | 103 class LayerErrorMessage : public OrthancStone::OriginMessage<IVolumeSlicer> |
104 { | 104 { |
105 ORTHANC_STONE_MESSAGE(__FILE__, __LINE__); | 105 ORTHANC_STONE_MESSAGE(__FILE__, __LINE__); |
106 | 106 |
107 private: | 107 private: |
108 const CoordinateSystem3D& slice_; | 108 const OrthancStone::CoordinateSystem3D& slice_; |
109 | 109 |
110 public: | 110 public: |
111 LayerErrorMessage(IVolumeSlicer& origin, | 111 LayerErrorMessage(IVolumeSlicer& origin, |
112 const CoordinateSystem3D& slice) : | 112 const OrthancStone::CoordinateSystem3D& slice) : |
113 OriginMessage(origin), | 113 OriginMessage(origin), |
114 slice_(slice) | 114 slice_(slice) |
115 { | 115 { |
116 } | 116 } |
117 | 117 |
118 const CoordinateSystem3D& GetSlice() const | 118 const OrthancStone::CoordinateSystem3D& GetSlice() const |
119 { | 119 { |
120 return slice_; | 120 return slice_; |
121 } | 121 } |
122 }; | 122 }; |
123 | 123 |
124 | 124 |
125 IVolumeSlicer(MessageBroker& broker) : | 125 IVolumeSlicer(OrthancStone::MessageBroker& broker) : |
126 IObservable(broker) | 126 IObservable(broker) |
127 { | 127 { |
128 } | 128 } |
129 | 129 |
130 virtual ~IVolumeSlicer() | 130 virtual ~IVolumeSlicer() |
131 { | 131 { |
132 } | 132 } |
133 | 133 |
134 virtual bool GetExtent(std::vector<Vector>& points, | 134 virtual bool GetExtent(std::vector<OrthancStone::Vector>& points, |
135 const CoordinateSystem3D& viewportSlice) = 0; | 135 const OrthancStone::CoordinateSystem3D& viewportSlice) = 0; |
136 | 136 |
137 virtual void ScheduleLayerCreation(const CoordinateSystem3D& viewportSlice) = 0; | 137 virtual void ScheduleLayerCreation(const OrthancStone::CoordinateSystem3D& viewportSlice) = 0; |
138 }; | 138 }; |
139 } | 139 } |