comparison Framework/Layers/OrthancFrameLayerSource.h @ 66:298f375dcb68 wasm

LayerWidget
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 17 May 2017 22:03:09 +0200
parents 885932a893de
children f5f54ed8d307
comparison
equal deleted inserted replaced
65:885932a893de 66:298f375dcb68
21 21
22 #pragma once 22 #pragma once
23 23
24 #include "LayerSourceBase.h" 24 #include "LayerSourceBase.h"
25 #include "../Toolbox/IWebService.h" 25 #include "../Toolbox/IWebService.h"
26 #include "../Toolbox/IVolumeSlicesObserver.h"
26 #include "../../Resources/Orthanc/Plugins/Samples/Common/FullOrthancDataset.h" 27 #include "../../Resources/Orthanc/Plugins/Samples/Common/FullOrthancDataset.h"
27 28
28 namespace OrthancStone 29 namespace OrthancStone
29 { 30 {
30 class OrthancFrameLayerSource : 31 class OrthancFrameLayerSource :
31 public LayerSourceBase, 32 public LayerSourceBase,
32 public IWebService::ICallback 33 public IWebService::ICallback // TODO move this into a PImpl
33 { 34 {
34 private: 35 private:
35 enum Content 36 enum Content
36 { 37 {
37 Content_Tags, 38 Content_Tags,
42 43
43 IWebService& orthanc_; 44 IWebService& orthanc_;
44 std::string instanceId_; 45 std::string instanceId_;
45 unsigned int frame_; 46 unsigned int frame_;
46 std::auto_ptr<OrthancPlugins::FullOrthancDataset> dataset_; 47 std::auto_ptr<OrthancPlugins::FullOrthancDataset> dataset_;
48 unsigned int frameWidth_;
49 unsigned int frameHeight_;
47 Orthanc::PixelFormat format_; 50 Orthanc::PixelFormat format_;
51 double pixelSpacingX_;
52 double pixelSpacingY_;
53 IVolumeSlicesObserver* observer2_;
54
55 protected:
56 virtual void StartInternal();
48 57
49 public: 58 public:
50 OrthancFrameLayerSource(IWebService& orthanc, 59 OrthancFrameLayerSource(IWebService& orthanc,
51 const std::string& instanceId, 60 const std::string& instanceId,
52 unsigned int frame); 61 unsigned int frame);
53 62
54 virtual void SetObserver(IObserver& observer); 63 virtual void SetObserver(IObserver& observer);
64
65 void SetObserver(IVolumeSlicesObserver& observer);
55 66
56 virtual void NotifyError(const std::string& uri, 67 virtual void NotifyError(const std::string& uri,
57 Orthanc::IDynamicObject* payload); 68 Orthanc::IDynamicObject* payload);
58 69
59 virtual void NotifySuccess(const std::string& uri, 70 virtual void NotifySuccess(const std::string& uri,