Mercurial > hg > orthanc-stone
annotate Framework/Layers/IVolumeSlicer.h @ 421:f87f28624b96 cache-in-radiography
tentative to make SmartLoader and RadiographyScene work together (not really working)
author | am@osimis.io |
---|---|
date | Tue, 20 Nov 2018 16:35:29 +0100 |
parents | 885e1ebd315c |
children |
rev | line source |
---|---|
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
1 /** |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
2 * Stone of Orthanc |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
3 * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
4 * Department, University Hospital of Liege, Belgium |
135
e2fe9352f240
upgrade to year 2018
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
121
diff
changeset
|
5 * Copyright (C) 2017-2018 Osimis S.A., Belgium |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
6 * |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
7 * This program is free software: you can redistribute it and/or |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
8 * modify it under the terms of the GNU Affero General Public License |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
9 * as published by the Free Software Foundation, either version 3 of |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
10 * the License, or (at your option) any later version. |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
11 * |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
12 * This program is distributed in the hope that it will be useful, but |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
13 * WITHOUT ANY WARRANTY; without even the implied warranty of |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
15 * Affero General Public License for more details. |
251
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
16 * |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
17 * You should have received a copy of the GNU Affero General Public License |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
18 * along with this program. If not, see <http://www.gnu.org/licenses/>. |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
19 **/ |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
20 |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
21 |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
22 #pragma once |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
23 |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
24 #include "ILayerRenderer.h" |
77 | 25 #include "../Toolbox/Slice.h" |
251
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
26 #include "../../Framework/Messages/IObservable.h" |
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
27 #include "../../Framework/Messages/IMessage.h" |
318
3a4ca166fafa
ImageAccessor refactoring + implemented Image Cache in SmartLoader
am@osimis.io
parents:
300
diff
changeset
|
28 #include "Core/Images/Image.h" |
421
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
29 #include <Plugins/Samples/Common/FullOrthancDataset.h> |
318
3a4ca166fafa
ImageAccessor refactoring + implemented Image Cache in SmartLoader
am@osimis.io
parents:
300
diff
changeset
|
30 #include <boost/shared_ptr.hpp> |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
31 |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
32 namespace OrthancStone |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
33 { |
421
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
34 |
396
ed7146fa2c98
rename ILayerSource as IVolumeSlicer, and OrthancFrameLayerSource as as DicomSeriesVolumeSlicer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
395
diff
changeset
|
35 class IVolumeSlicer : public IObservable |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
36 { |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
37 public: |
397 | 38 typedef OriginMessage<MessageType_VolumeSlicer_GeometryReady, IVolumeSlicer> GeometryReadyMessage; |
39 typedef OriginMessage<MessageType_VolumeSlicer_GeometryError, IVolumeSlicer> GeometryErrorMessage; | |
40 typedef OriginMessage<MessageType_VolumeSlicer_ContentChanged, IVolumeSlicer> ContentChangedMessage; | |
299
3897f9f28cfa
backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents:
267
diff
changeset
|
41 |
421
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
42 class TagsReadyMessage : public OriginMessage<MessageType_VolumeSlicer_TagsReady, IVolumeSlicer> |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
43 { |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
44 private: |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
45 const OrthancPlugins::FullOrthancDataset& dicomTags_; |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
46 public: |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
47 TagsReadyMessage(IVolumeSlicer& origin, |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
48 const OrthancPlugins::FullOrthancDataset& dicomTags) : |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
49 OriginMessage(origin), |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
50 dicomTags_(dicomTags) |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
51 { |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
52 } |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
53 |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
54 const OrthancPlugins::FullOrthancDataset& GetDicomTags() const |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
55 { |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
56 return dicomTags_; |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
57 } |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
58 }; |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
59 |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
60 class FrameReadyMessage : public OriginMessage<MessageType_VolumeSlicer_FrameReady, IVolumeSlicer> |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
61 { |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
62 private: |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
63 boost::shared_ptr<Orthanc::ImageAccessor> image_; |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
64 public: |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
65 FrameReadyMessage(IVolumeSlicer& origin, boost::shared_ptr<Orthanc::ImageAccessor> image) : |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
66 OriginMessage(origin), |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
67 image_(image) |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
68 { |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
69 } |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
70 |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
71 boost::shared_ptr<Orthanc::ImageAccessor> GetImage() const |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
72 { |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
73 return image_; |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
74 } |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
75 }; |
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
76 |
399
885e1ebd315c
rename SliceChange as SliceContentChange
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
397
diff
changeset
|
77 class SliceContentChangedMessage : public OriginMessage<MessageType_VolumeSlicer_SliceChanged, IVolumeSlicer> |
251
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
78 { |
379 | 79 private: |
252 | 80 const Slice& slice_; |
379 | 81 |
82 public: | |
399
885e1ebd315c
rename SliceChange as SliceContentChange
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
397
diff
changeset
|
83 SliceContentChangedMessage(IVolumeSlicer& origin, |
421
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
84 const Slice& slice) : |
379 | 85 OriginMessage(origin), |
86 slice_(slice) | |
251
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
87 { |
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
88 } |
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
89 |
379 | 90 const Slice& GetSlice() const |
91 { | |
92 return slice_; | |
93 } | |
94 }; | |
95 | |
96 | |
397 | 97 class LayerReadyMessage : public OriginMessage<MessageType_VolumeSlicer_LayerReady, IVolumeSlicer> |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
98 { |
381
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
99 public: |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
100 class IRendererFactory : public boost::noncopyable |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
101 { |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
102 public: |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
103 virtual ~IRendererFactory() |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
104 { |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
105 } |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
106 |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
107 virtual ILayerRenderer* CreateRenderer() const = 0; |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
108 }; |
421
f87f28624b96
tentative to make SmartLoader and RadiographyScene work together (not really working)
am@osimis.io
parents:
399
diff
changeset
|
109 |
379 | 110 private: |
381
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
111 const IRendererFactory& factory_; |
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
112 const CoordinateSystem3D& slice_; |
251
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
113 |
379 | 114 public: |
396
ed7146fa2c98
rename ILayerSource as IVolumeSlicer, and OrthancFrameLayerSource as as DicomSeriesVolumeSlicer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
395
diff
changeset
|
115 LayerReadyMessage(IVolumeSlicer& origin, |
381
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
116 const IRendererFactory& rendererFactory, |
380
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
117 const CoordinateSystem3D& slice) : |
379 | 118 OriginMessage(origin), |
381
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
119 factory_(rendererFactory), |
380
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
120 slice_(slice) |
379 | 121 { |
122 } | |
123 | |
381
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
124 ILayerRenderer* CreateRenderer() const |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
125 { |
381
19bd222283ae
uncoupling LayerReadyMessage from the creation of the renderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
380
diff
changeset
|
126 return factory_.CreateRenderer(); |
379 | 127 } |
128 | |
129 const CoordinateSystem3D& GetSlice() const | |
130 { | |
131 return slice_; | |
132 } | |
380
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
133 }; |
379 | 134 |
380
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
135 |
397 | 136 class LayerErrorMessage : public OriginMessage<MessageType_VolumeSlicer_LayerError, IVolumeSlicer> |
380
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
137 { |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
138 private: |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
139 const CoordinateSystem3D& slice_; |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
140 |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
141 public: |
396
ed7146fa2c98
rename ILayerSource as IVolumeSlicer, and OrthancFrameLayerSource as as DicomSeriesVolumeSlicer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
395
diff
changeset
|
142 LayerErrorMessage(IVolumeSlicer& origin, |
380
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
143 const CoordinateSystem3D& slice) : |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
144 OriginMessage(origin), |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
145 slice_(slice) |
379 | 146 { |
380
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
147 } |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
148 |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
149 const CoordinateSystem3D& GetSlice() const |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
150 { |
ba5ad93f935a
ILayerSource::LayerErrorMessage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
379
diff
changeset
|
151 return slice_; |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
152 } |
251
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
135
diff
changeset
|
153 }; |
318
3a4ca166fafa
ImageAccessor refactoring + implemented Image Cache in SmartLoader
am@osimis.io
parents:
300
diff
changeset
|
154 |
378 | 155 |
396
ed7146fa2c98
rename ILayerSource as IVolumeSlicer, and OrthancFrameLayerSource as as DicomSeriesVolumeSlicer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
395
diff
changeset
|
156 IVolumeSlicer(MessageBroker& broker) : |
378 | 157 IObservable(broker) |
158 { | |
159 } | |
160 | |
396
ed7146fa2c98
rename ILayerSource as IVolumeSlicer, and OrthancFrameLayerSource as as DicomSeriesVolumeSlicer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
395
diff
changeset
|
161 virtual ~IVolumeSlicer() |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
162 { |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
163 } |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
164 |
97
d18dcc963930
separation of the renderers vs. viewport slice
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
96
diff
changeset
|
165 virtual bool GetExtent(std::vector<Vector>& points, |
110
53025eecbc95
renamed SliceGeometry as CoordinateSystem3D
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
97
diff
changeset
|
166 const CoordinateSystem3D& viewportSlice) = 0; |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
167 |
110
53025eecbc95
renamed SliceGeometry as CoordinateSystem3D
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
97
diff
changeset
|
168 virtual void ScheduleLayerCreation(const CoordinateSystem3D& viewportSlice) = 0; |
65
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
169 }; |
885932a893de
OrthancFrameLayerSource
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
170 } |