Mercurial > hg > orthanc-stone
comparison Framework/Loaders/OrthancSeriesVolumeProgressiveLoader.h @ 1339:556b4bc19118 broker
The loaders have been adapter to the nobroker architecture
and have been put back in the regular source files
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Fri, 03 Apr 2020 16:47:46 +0200 |
parents | b1396be5aa27 |
children | f4a06ad1580b |
comparison
equal
deleted
inserted
replaced
1338:1b24f6b06408 | 1339:556b4bc19118 |
---|---|
19 **/ | 19 **/ |
20 | 20 |
21 | 21 |
22 #pragma once | 22 #pragma once |
23 | 23 |
24 #include "../../Loaders/IFetchingItemsSorter.h" | 24 #include "../Loaders/IFetchingItemsSorter.h" |
25 #include "../../Loaders/IFetchingStrategy.h" | 25 #include "../Loaders/IFetchingStrategy.h" |
26 #include "../../Messages/IObservable.h" | 26 #include "../Messages/IObservable.h" |
27 #include "../../Messages/ObserverBase.h" | 27 #include "../Messages/ObserverBase.h" |
28 #include "../../Oracle/GetOrthancImageCommand.h" | 28 #include "../Oracle/GetOrthancImageCommand.h" |
29 #include "../../Oracle/GetOrthancWebViewerJpegCommand.h" | 29 #include "../Oracle/GetOrthancWebViewerJpegCommand.h" |
30 #include "../../Oracle/IOracle.h" | 30 #include "../Oracle/IOracle.h" |
31 #include "../../Oracle/OrthancRestApiCommand.h" | 31 #include "../Oracle/OrthancRestApiCommand.h" |
32 #include "../../Toolbox/SlicesSorter.h" | 32 #include "../Toolbox/SlicesSorter.h" |
33 #include "../../Volumes/DicomVolumeImage.h" | 33 #include "../Volumes/DicomVolumeImage.h" |
34 #include "../../Volumes/IVolumeSlicer.h" | 34 #include "../Volumes/IVolumeSlicer.h" |
35 | 35 |
36 #include "../Volumes/IGeometryProvider.h" | 36 #include "../Volumes/IGeometryProvider.h" |
37 | 37 |
38 | 38 |
39 #include <boost/shared_ptr.hpp> | 39 #include <boost/shared_ptr.hpp> |
40 | 40 |
41 namespace OrthancStone | 41 namespace OrthancStone |
42 { | 42 { |
43 class ILoadersContext; | |
43 /** | 44 /** |
44 This class is used to manage the progressive loading of a volume that | 45 This class is used to manage the progressive loading of a volume that |
45 is stored in a Dicom series. | 46 is stored in a Dicom series. |
46 */ | 47 */ |
47 class OrthancSeriesVolumeProgressiveLoader : | 48 class OrthancSeriesVolumeProgressiveLoader : |
107 void LoadBestQualitySliceContent(const OrthancStone::GetOrthancImageCommand::SuccessMessage& message); | 108 void LoadBestQualitySliceContent(const OrthancStone::GetOrthancImageCommand::SuccessMessage& message); |
108 | 109 |
109 void LoadJpegSliceContent(const OrthancStone::GetOrthancWebViewerJpegCommand::SuccessMessage& message); | 110 void LoadJpegSliceContent(const OrthancStone::GetOrthancWebViewerJpegCommand::SuccessMessage& message); |
110 | 111 |
111 OrthancStone::ILoadersContext& loadersContext_; | 112 OrthancStone::ILoadersContext& loadersContext_; |
112 bool active_; | 113 bool active_; |
113 bool progressiveQuality_; | 114 bool progressiveQuality_; |
114 unsigned int simultaneousDownloads_; | 115 unsigned int simultaneousDownloads_; |
115 SeriesGeometry seriesGeometry_; | 116 SeriesGeometry seriesGeometry_; |
116 boost::shared_ptr<OrthancStone::DicomVolumeImage> volume_; | 117 boost::shared_ptr<OrthancStone::DicomVolumeImage> volume_; |
117 std::unique_ptr<OrthancStone::IFetchingItemsSorter::IFactory> sorter_; | 118 std::unique_ptr<OrthancStone::IFetchingItemsSorter::IFactory> sorter_; |
118 std::unique_ptr<OrthancStone::IFetchingStrategy> strategy_; | 119 std::unique_ptr<OrthancStone::IFetchingStrategy> strategy_; |
120 | |
119 std::vector<unsigned int> slicesQuality_; | 121 std::vector<unsigned int> slicesQuality_; |
120 bool volumeImageReadyInHighQuality_; | 122 bool volumeImageReadyInHighQuality_; |
121 | 123 |
122 OrthancSeriesVolumeProgressiveLoader( | 124 OrthancSeriesVolumeProgressiveLoader( |
123 OrthancStone::ILoadersContext& loadersContext, | 125 OrthancStone::ILoadersContext& loadersContext, |