Mercurial > hg > orthanc-stone
comparison Framework/Toolbox/OrthancSlicesLoader.h @ 299:3897f9f28cfa am-callable-and-promise
backup work in progress: updated messaging framework with ICallable
author | am@osimis.io |
---|---|
date | Fri, 14 Sep 2018 16:44:01 +0200 |
parents | 5bd4161bf11b |
children | b4abaeb783b1 |
comparison
equal
deleted
inserted
replaced
298:f58bfb7bbcc9 | 299:3897f9f28cfa |
---|---|
30 namespace OrthancStone | 30 namespace OrthancStone |
31 { | 31 { |
32 class OrthancSlicesLoader : public IObservable | 32 class OrthancSlicesLoader : public IObservable |
33 { | 33 { |
34 public: | 34 public: |
35 struct SliceImageReadyMessage : public IMessage | 35 |
36 typedef OriginMessage<MessageType_SliceLoader_GeometryReady, OrthancSlicesLoader> SliceGeometryReadyMessage; | |
37 typedef OriginMessage<MessageType_SliceLoader_GeometryError, OrthancSlicesLoader> SliceGeometryErrorMessage; | |
38 | |
39 struct SliceImageReadyMessage : public BaseMessage<MessageType_SliceLoader_ImageReady> | |
36 { | 40 { |
37 unsigned int sliceIndex_; | 41 unsigned int sliceIndex_; |
38 const Slice& slice_; | 42 const Slice& slice_; |
39 std::auto_ptr<Orthanc::ImageAccessor>& image_; | 43 std::auto_ptr<Orthanc::ImageAccessor>& image_; |
40 SliceImageQuality effectiveQuality_; | 44 SliceImageQuality effectiveQuality_; |
41 | 45 |
42 SliceImageReadyMessage(unsigned int sliceIndex, | 46 SliceImageReadyMessage(unsigned int sliceIndex, |
43 const Slice& slice, | 47 const Slice& slice, |
44 std::auto_ptr<Orthanc::ImageAccessor>& image, | 48 std::auto_ptr<Orthanc::ImageAccessor>& image, |
45 SliceImageQuality effectiveQuality) | 49 SliceImageQuality effectiveQuality) |
46 : IMessage(MessageType_SliceLoader_ImageReady), | 50 : BaseMessage(), |
47 sliceIndex_(sliceIndex), | 51 sliceIndex_(sliceIndex), |
48 slice_(slice), | 52 slice_(slice), |
49 image_(image), | 53 image_(image), |
50 effectiveQuality_(effectiveQuality) | 54 effectiveQuality_(effectiveQuality) |
51 { | 55 { |
52 } | 56 } |
53 }; | 57 }; |
54 | 58 |
55 struct SliceImageErrorMessage : public IMessage | 59 struct SliceImageErrorMessage : public BaseMessage<MessageType_SliceLoader_ImageError> |
56 { | 60 { |
57 const Slice& slice_; | 61 const Slice& slice_; |
58 unsigned int sliceIndex_; | 62 unsigned int sliceIndex_; |
59 SliceImageQuality effectiveQuality_; | 63 SliceImageQuality effectiveQuality_; |
60 | 64 |
61 SliceImageErrorMessage(unsigned int sliceIndex, | 65 SliceImageErrorMessage(unsigned int sliceIndex, |
62 const Slice& slice, | 66 const Slice& slice, |
63 SliceImageQuality effectiveQuality) | 67 SliceImageQuality effectiveQuality) |
64 : IMessage(MessageType_SliceLoader_ImageError), | 68 : BaseMessage(), |
65 slice_(slice), | 69 slice_(slice), |
66 sliceIndex_(sliceIndex), | 70 sliceIndex_(sliceIndex), |
67 effectiveQuality_(effectiveQuality) | 71 effectiveQuality_(effectiveQuality) |
68 { | 72 { |
69 } | 73 } |
164 const CoordinateSystem3D& plane) const; | 168 const CoordinateSystem3D& plane) const; |
165 | 169 |
166 void ScheduleLoadSliceImage(size_t index, | 170 void ScheduleLoadSliceImage(size_t index, |
167 SliceImageQuality requestedQuality); | 171 SliceImageQuality requestedQuality); |
168 | 172 |
169 virtual void HandleMessage(IObservable& from, const IMessage& message); | 173 // virtual void HandleMessage(IObservable& from, const IMessage& message); |
170 }; | 174 }; |
171 } | 175 } |