Mercurial > hg > orthanc-stone
comparison Framework/Viewport/WebAssemblyViewport.h @ 1328:fd616c4a5904 broker
Added mechanism to prevent callbacks from being sent on dead WebAssemblyViewport objects
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Fri, 27 Mar 2020 12:54:27 +0100 |
parents | cbfdba08e039 |
children | ab81ee8fce1f |
comparison
equal
deleted
inserted
replaced
1327:4f8db2d202c8 | 1328:fd616c4a5904 |
---|---|
34 #include <emscripten.h> | 34 #include <emscripten.h> |
35 #include <emscripten/html5.h> | 35 #include <emscripten/html5.h> |
36 | 36 |
37 namespace OrthancStone | 37 namespace OrthancStone |
38 { | 38 { |
39 class WebAssemblyViewport : public IViewport | 39 class WebAssemblyViewport : public IViewport, |
40 public boost::enable_shared_from_this<WebAssemblyViewport> | |
41 | |
40 { | 42 { |
41 private: | 43 private: |
42 class WasmLock; | 44 class WasmLock; |
43 | 45 |
44 std::string shortCanvasId_; | 46 std::string shortCanvasId_; |
82 const Scene2D* scene, | 84 const Scene2D* scene, |
83 boost::weak_ptr<UndoStack> undoStackW); | 85 boost::weak_ptr<UndoStack> undoStackW); |
84 | 86 |
85 virtual ILock* Lock() ORTHANC_OVERRIDE; | 87 virtual ILock* Lock() ORTHANC_OVERRIDE; |
86 | 88 |
89 /** | |
90 This method takes ownership | |
91 */ | |
87 void AcquireInteractor(IViewportInteractor* interactor); | 92 void AcquireInteractor(IViewportInteractor* interactor); |
88 | 93 |
89 const std::string& GetShortCanvasId() const | 94 const std::string& GetShortCanvasId() const |
90 { | 95 { |
91 return shortCanvasId_; | 96 return shortCanvasId_; |