comparison Framework/Deprecated/Loaders/OrthancSeriesVolumeProgressiveLoader.h @ 1310:9bea7e15b519 broker

- first pass at changes to cope with the refactoring of the loading system - global loader-related data accessible through ILoadersContext::ILock - many changes in legacy loaders (CT, RTSTRUCT, DOSE) + loader cache - NOT FINISHED! there are shared_from_this calls in ctors! this will crash!
author Benjamin Golinvaux <bgo@osimis.io>
date Mon, 09 Mar 2020 14:53:22 +0100
parents adf234ecaa00
children 9b126de2cde2
comparison
equal deleted inserted replaced
1309:1f877e0846fe 1310:9bea7e15b519
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
41 namespace OrthancStone
42 {
43 class ILoadersContext;
44 }
40 45
41 namespace Deprecated 46 namespace Deprecated
42 { 47 {
43 /** 48 /**
44 This class is used to manage the progressive loading of a volume that 49 This class is used to manage the progressive loading of a volume that
106 111
107 void LoadBestQualitySliceContent(const OrthancStone::GetOrthancImageCommand::SuccessMessage& message); 112 void LoadBestQualitySliceContent(const OrthancStone::GetOrthancImageCommand::SuccessMessage& message);
108 113
109 void LoadJpegSliceContent(const OrthancStone::GetOrthancWebViewerJpegCommand::SuccessMessage& message); 114 void LoadJpegSliceContent(const OrthancStone::GetOrthancWebViewerJpegCommand::SuccessMessage& message);
110 115
111 OrthancStone::IOracle& oracle_; 116 OrthancStone::ILoadersContext& loadersContext_;
112 bool active_; 117 bool active_;
113 unsigned int simultaneousDownloads_; 118 unsigned int simultaneousDownloads_;
114 SeriesGeometry seriesGeometry_; 119 SeriesGeometry seriesGeometry_;
115 boost::shared_ptr<OrthancStone::DicomVolumeImage> volume_; 120 boost::shared_ptr<OrthancStone::DicomVolumeImage> volume_;
116 std::unique_ptr<OrthancStone::IFetchingItemsSorter::IFactory> sorter_; 121 std::unique_ptr<OrthancStone::IFetchingItemsSorter::IFactory> sorter_;
117 std::unique_ptr<OrthancStone::IFetchingStrategy> strategy_; 122 std::unique_ptr<OrthancStone::IFetchingStrategy> strategy_;
118 std::vector<unsigned int> slicesQuality_; 123 std::vector<unsigned int> slicesQuality_;
119 bool volumeImageReadyInHighQuality_; 124 bool volumeImageReadyInHighQuality_;
120 125
121
122 public: 126 public:
123 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, VolumeImageReadyInHighQuality, OrthancSeriesVolumeProgressiveLoader); 127 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, VolumeImageReadyInHighQuality, OrthancSeriesVolumeProgressiveLoader);
124 128
125 129 OrthancSeriesVolumeProgressiveLoader(
126 OrthancSeriesVolumeProgressiveLoader(const boost::shared_ptr<OrthancStone::DicomVolumeImage>& volume, 130 OrthancStone::ILoadersContext& context,
127 OrthancStone::IOracle& oracle, 131 const boost::shared_ptr<OrthancStone::DicomVolumeImage>& volume);
128 OrthancStone::IObservable& oracleObservable);
129 132
130 virtual ~OrthancSeriesVolumeProgressiveLoader(); 133 virtual ~OrthancSeriesVolumeProgressiveLoader();
131 134
132 void SetSimultaneousDownloads(unsigned int count); 135 void SetSimultaneousDownloads(unsigned int count);
133 136