comparison OrthancServer/Sources/ServerContext.h @ 4810:7afbb54bd028

merge storage-cache
author Alain Mazy <am@osimis.io>
date Tue, 23 Nov 2021 09:22:11 +0100
parents 94616af363ec 434843934307
children 70d2a97ca8cb 7053502fbf97
comparison
equal deleted inserted replaced
4809:2ca4213fb50a 4810:7afbb54bd028
41 41
42 #include "../../OrthancFramework/Sources/DicomFormat/DicomElement.h" 42 #include "../../OrthancFramework/Sources/DicomFormat/DicomElement.h"
43 #include "../../OrthancFramework/Sources/DicomParsing/DicomModification.h" 43 #include "../../OrthancFramework/Sources/DicomParsing/DicomModification.h"
44 #include "../../OrthancFramework/Sources/DicomParsing/IDicomTranscoder.h" 44 #include "../../OrthancFramework/Sources/DicomParsing/IDicomTranscoder.h"
45 #include "../../OrthancFramework/Sources/DicomParsing/ParsedDicomCache.h" 45 #include "../../OrthancFramework/Sources/DicomParsing/ParsedDicomCache.h"
46 #include "../../OrthancFramework/Sources/FileStorage/StorageCache.h"
46 #include "../../OrthancFramework/Sources/MultiThreading/Semaphore.h" 47 #include "../../OrthancFramework/Sources/MultiThreading/Semaphore.h"
47 48
48 49
49 namespace Orthanc 50 namespace Orthanc
50 { 51 {
203 204
204 virtual void SignalJobFailure(const std::string& jobId) ORTHANC_OVERRIDE; 205 virtual void SignalJobFailure(const std::string& jobId) ORTHANC_OVERRIDE;
205 206
206 ServerIndex index_; 207 ServerIndex index_;
207 IStorageArea& area_; 208 IStorageArea& area_;
209 StorageCache storageCache_;
208 210
209 bool compressionEnabled_; 211 bool compressionEnabled_;
210 bool storeMD5_; 212 bool storeMD5_;
211 213
212 Semaphore largeDicomThrottler_; // New in Orthanc 1.9.0 (notably for very large DICOM files in WSI) 214 Semaphore largeDicomThrottler_; // New in Orthanc 1.9.0 (notably for very large DICOM files in WSI)
322 ServerIndex& GetIndex() 324 ServerIndex& GetIndex()
323 { 325 {
324 return index_; 326 return index_;
325 } 327 }
326 328
329 void SetMaximumStorageCacheSize(size_t size)
330 {
331 return storageCache_.SetMaximumSize(size);
332 }
333
327 void SetCompressionEnabled(bool enabled); 334 void SetCompressionEnabled(bool enabled);
328 335
329 bool IsCompressionEnabled() const 336 bool IsCompressionEnabled() const
330 { 337 {
331 return compressionEnabled_; 338 return compressionEnabled_;
359 void ReadDicomAsJson(Json::Value& result, 366 void ReadDicomAsJson(Json::Value& result,
360 const std::string& instancePublicId); 367 const std::string& instancePublicId);
361 368
362 void ReadDicom(std::string& dicom, 369 void ReadDicom(std::string& dicom,
363 const std::string& instancePublicId); 370 const std::string& instancePublicId);
364 371
372 void ReadDicomForHeader(std::string& dicom,
373 const std::string& instancePublicId);
374
365 bool ReadDicomUntilPixelData(std::string& dicom, 375 bool ReadDicomUntilPixelData(std::string& dicom,
366 const std::string& instancePublicId); 376 const std::string& instancePublicId);
367 377
368 // This method is for low-level operations on "/instances/.../attachments/..." 378 // This method is for low-level operations on "/instances/.../attachments/..."
369 void ReadAttachment(std::string& result, 379 void ReadAttachment(std::string& result,