Mercurial > hg > orthanc-stone
comparison Framework/StoneInitialization.cpp @ 1236:358461330978 broker
global function GetWebGLViewportsRegistry()
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 09 Dec 2019 20:45:47 +0100 |
parents | 092ec2a225ad |
children | 0ca50d275b9a |
comparison
equal
deleted
inserted
replaced
1235:e71ee3e88448 | 1236:358461330978 |
---|---|
58 | 58 |
59 #if ORTHANC_ENABLE_DCMTK == 1 | 59 #if ORTHANC_ENABLE_DCMTK == 1 |
60 # include <Core/DicomParsing/FromDcmtkBridge.h> | 60 # include <Core/DicomParsing/FromDcmtkBridge.h> |
61 #endif | 61 #endif |
62 | 62 |
63 #if ORTHANC_ENABLE_WASM == 1 | |
64 static double viewportsTimeout_ = 1000; | |
65 static std::auto_ptr<OrthancStone::WebGLViewportsRegistry> viewportsRegistry_; | |
66 #endif | |
67 | |
63 #include "Toolbox/LinearAlgebra.h" | 68 #include "Toolbox/LinearAlgebra.h" |
64 | 69 |
65 #include <Core/OrthancException.h> | 70 #include <Core/OrthancException.h> |
66 #include <Core/Toolbox.h> | 71 #include <Core/Toolbox.h> |
67 | 72 |
168 } | 173 } |
169 | 174 |
170 | 175 |
171 void StoneFinalize() | 176 void StoneFinalize() |
172 { | 177 { |
178 #if ORTHANC_ENABLE_WASM == 1 | |
179 viewportsRegistry_.reset(); | |
180 #endif | |
181 | |
173 #if ORTHANC_ENABLE_SDL == 1 | 182 #if ORTHANC_ENABLE_SDL == 1 |
174 OrthancStone::SdlWindow::GlobalFinalize(); | 183 OrthancStone::SdlWindow::GlobalFinalize(); |
175 #endif | 184 #endif |
176 | 185 |
177 #if ORTHANC_ENABLE_DCMTK == 1 | 186 #if ORTHANC_ENABLE_DCMTK == 1 |
186 Orthanc::Toolbox::FinalizeOpenSsl(); | 195 Orthanc::Toolbox::FinalizeOpenSsl(); |
187 #endif | 196 #endif |
188 | 197 |
189 Orthanc::Logging::Finalize(); | 198 Orthanc::Logging::Finalize(); |
190 } | 199 } |
200 | |
201 | |
202 #if ORTHANC_ENABLE_WASM == 1 | |
203 void SetWebGLViewportsRegistryTimeout(double timeout) | |
204 { | |
205 if (viewportsRegistry_.get()) | |
206 { | |
207 throw Orthanc::OrthancException(Orthanc::ErrorCode_BadSequenceOfCalls); | |
208 } | |
209 else | |
210 { | |
211 viewportsTimeout_ = timeout; | |
212 } | |
213 } | |
214 #endif | |
215 | |
216 | |
217 #if ORTHANC_ENABLE_WASM == 1 | |
218 WebGLViewportsRegistry& GetWebGLViewportsRegistry() | |
219 { | |
220 if (viewportsRegistry_.get() == NULL) | |
221 { | |
222 viewportsRegistry_.reset(new WebGLViewportsRegistry(viewportsTimeout_)); | |
223 } | |
224 | |
225 return *viewportsRegistry_; | |
226 } | |
227 #endif | |
191 } | 228 } |