comparison Framework/SmartLoader.cpp @ 401:f1c769b3a5c2

start getting rid of VolumeSlicerBase
author Sebastien Jodogne <s.jodogne@gmail.com>
date Sat, 10 Nov 2018 10:11:29 +0100
parents ed7146fa2c98
children 5d359b115b29
comparison
equal deleted inserted replaced
400:518f680dbf2e 401:f1c769b3a5c2
35 CachedSliceStatus_ScheduledToLoad, 35 CachedSliceStatus_ScheduledToLoad,
36 CachedSliceStatus_GeometryLoaded, 36 CachedSliceStatus_GeometryLoaded,
37 CachedSliceStatus_ImageLoaded 37 CachedSliceStatus_ImageLoaded
38 }; 38 };
39 39
40 class SmartLoader::CachedSlice : public VolumeSlicerBase 40 class SmartLoader::CachedSlice : public IVolumeSlicer
41 { 41 {
42 public: 42 public:
43 class RendererFactory : public LayerReadyMessage::IRendererFactory 43 class RendererFactory : public LayerReadyMessage::IRendererFactory
44 { 44 {
45 private: 45 private:
66 SliceImageQuality effectiveQuality_; 66 SliceImageQuality effectiveQuality_;
67 CachedSliceStatus status_; 67 CachedSliceStatus status_;
68 68
69 public: 69 public:
70 CachedSlice(MessageBroker& broker) : 70 CachedSlice(MessageBroker& broker) :
71 VolumeSlicerBase(broker) 71 IVolumeSlicer(broker)
72 { 72 {
73 } 73 }
74 74
75 virtual ~CachedSlice() 75 virtual ~CachedSlice()
76 { 76 {
92 // once the VolumeSlicer is ready 92 // once the VolumeSlicer is ready
93 if (status_ == CachedSliceStatus_ImageLoaded) 93 if (status_ == CachedSliceStatus_ImageLoaded)
94 { 94 {
95 LOG(WARNING) << "ScheduleLayerCreation for CachedSlice (image is loaded): " << slice_->GetOrthancInstanceId(); 95 LOG(WARNING) << "ScheduleLayerCreation for CachedSlice (image is loaded): " << slice_->GetOrthancInstanceId();
96 96
97 RendererFactory factory(*this); 97 RendererFactory factory(*this);
98 VolumeSlicerBase::NotifyLayerReady(factory, slice_->GetGeometry()); 98 EmitMessage(IVolumeSlicer::LayerReadyMessage(*this, factory, slice_->GetGeometry()));
99 } 99 }
100 else 100 else
101 { 101 {
102 LOG(WARNING) << "ScheduleLayerCreation for CachedSlice (image is not loaded yet): " << slice_->GetOrthancInstanceId(); 102 LOG(WARNING) << "ScheduleLayerCreation for CachedSlice (image is not loaded yet): " << slice_->GetOrthancInstanceId();
103 } 103 }
172 throw StoneException(ErrorCode_CanOnlyAddOneLayerAtATime); 172 throw StoneException(ErrorCode_CanOnlyAddOneLayerAtATime);
173 } 173 }
174 174
175 if (cachedSlice != NULL) 175 if (cachedSlice != NULL)
176 { 176 {
177 cachedSlice->NotifyGeometryReady(); 177 EmitMessage(IVolumeSlicer::GeometryReadyMessage(*cachedSlice));
178 } 178 }
179 179
180 } 180 }
181 181
182 void SmartLoader::PreloadSlice(const std::string instanceId, 182 void SmartLoader::PreloadSlice(const std::string instanceId,