Mercurial > hg > orthanc-stone
comparison Framework/Toolbox/OrthancSlicesLoader.h @ 117:42c05a3baee3 wasm
loading multi-frame instances as 3D volumes
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 28 Sep 2017 16:55:51 +0200 |
parents | 53025eecbc95 |
children | 063f7f3d9f14 |
comparison
equal
deleted
inserted
replaced
116:4c5f7cda8624 | 117:42c05a3baee3 |
---|---|
45 | 45 |
46 virtual void NotifySliceImageReady(const OrthancSlicesLoader& loader, | 46 virtual void NotifySliceImageReady(const OrthancSlicesLoader& loader, |
47 unsigned int sliceIndex, | 47 unsigned int sliceIndex, |
48 const Slice& slice, | 48 const Slice& slice, |
49 std::auto_ptr<Orthanc::ImageAccessor>& image, | 49 std::auto_ptr<Orthanc::ImageAccessor>& image, |
50 SliceImageQuality quality) = 0; | 50 SliceImageQuality effectiveQuality) = 0; |
51 | 51 |
52 virtual void NotifySliceImageError(const OrthancSlicesLoader& loader, | 52 virtual void NotifySliceImageError(const OrthancSlicesLoader& loader, |
53 unsigned int sliceIndex, | 53 unsigned int sliceIndex, |
54 const Slice& slice, | 54 const Slice& slice, |
55 SliceImageQuality quality) = 0; | 55 SliceImageQuality quality) = 0; |
66 | 66 |
67 enum Mode | 67 enum Mode |
68 { | 68 { |
69 Mode_SeriesGeometry, | 69 Mode_SeriesGeometry, |
70 Mode_InstanceGeometry, | 70 Mode_InstanceGeometry, |
71 Mode_LoadImage | 71 Mode_FrameGeometry, |
72 Mode_LoadImage, | |
73 Mode_LoadRawImage | |
72 }; | 74 }; |
73 | 75 |
74 class Operation; | 76 class Operation; |
75 class WebCallback; | 77 class WebCallback; |
76 | 78 |
88 | 90 |
89 void ParseSeriesGeometry(const void* answer, | 91 void ParseSeriesGeometry(const void* answer, |
90 size_t size); | 92 size_t size); |
91 | 93 |
92 void ParseInstanceGeometry(const std::string& instanceId, | 94 void ParseInstanceGeometry(const std::string& instanceId, |
93 unsigned int frame, | |
94 const void* answer, | 95 const void* answer, |
95 size_t size); | 96 size_t size); |
97 | |
98 void ParseFrameGeometry(const std::string& instanceId, | |
99 unsigned int frame, | |
100 const void* answer, | |
101 size_t size); | |
96 | 102 |
97 void ParseSliceImagePng(const Operation& operation, | 103 void ParseSliceImagePng(const Operation& operation, |
98 const void* answer, | 104 const void* answer, |
99 size_t size); | 105 size_t size); |
100 | 106 |
101 void ParseSliceImageJpeg(const Operation& operation, | 107 void ParseSliceImageJpeg(const Operation& operation, |
102 const void* answer, | 108 const void* answer, |
103 size_t size); | 109 size_t size); |
104 | 110 |
105 void ScheduleSliceImagePng(size_t index); | 111 void ParseSliceRawImage(const Operation& operation, |
112 const void* answer, | |
113 size_t size); | |
114 | |
115 void ScheduleSliceImagePng(const Slice& slice, | |
116 size_t index); | |
106 | 117 |
107 void ScheduleSliceImageJpeg(size_t index, | 118 void ScheduleSliceImageJpeg(const Slice& slice, |
119 size_t index, | |
108 SliceImageQuality quality); | 120 SliceImageQuality quality); |
109 | 121 |
110 public: | 122 public: |
111 OrthancSlicesLoader(ICallback& callback, | 123 OrthancSlicesLoader(ICallback& callback, |
112 IWebService& orthanc); | 124 IWebService& orthanc); |
113 | 125 |
114 void ScheduleLoadSeries(const std::string& seriesId); | 126 void ScheduleLoadSeries(const std::string& seriesId); |
115 | 127 |
116 void ScheduleLoadInstance(const std::string& instanceId, | 128 void ScheduleLoadInstance(const std::string& instanceId); |
117 unsigned int frame); | 129 |
130 void ScheduleLoadFrame(const std::string& instanceId, | |
131 unsigned int frame); | |
118 | 132 |
119 bool IsGeometryReady() const; | 133 bool IsGeometryReady() const; |
120 | 134 |
121 size_t GetSliceCount() const; | 135 size_t GetSliceCount() const; |
122 | 136 |
124 | 138 |
125 bool LookupSlice(size_t& index, | 139 bool LookupSlice(size_t& index, |
126 const CoordinateSystem3D& plane) const; | 140 const CoordinateSystem3D& plane) const; |
127 | 141 |
128 void ScheduleLoadSliceImage(size_t index, | 142 void ScheduleLoadSliceImage(size_t index, |
129 SliceImageQuality quality); | 143 SliceImageQuality requestedQuality); |
130 }; | 144 }; |
131 } | 145 } |