Mercurial > hg > orthanc
comparison OrthancServer/ServerContext.h @ 3894:8f7ad4989fec transcoding
transcoding to uncompressed transfer syntaxes over DICOM protocol is implemented
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 07 May 2020 11:13:29 +0200 |
parents | 023b2a9f3aa1 |
children | d1273d7cc200 |
comparison
equal
deleted
inserted
replaced
3893:7a5fa8f307e9 | 3894:8f7ad4989fec |
---|---|
38 #include "OrthancHttpHandler.h" | 38 #include "OrthancHttpHandler.h" |
39 #include "ServerIndex.h" | 39 #include "ServerIndex.h" |
40 #include "ServerJobs/IStorageCommitmentFactory.h" | 40 #include "ServerJobs/IStorageCommitmentFactory.h" |
41 | 41 |
42 #include "../Core/Cache/MemoryCache.h" | 42 #include "../Core/Cache/MemoryCache.h" |
43 #include "../Core/DicomParsing/IDicomTranscoder.h" | |
43 | 44 |
44 | 45 |
45 namespace Orthanc | 46 namespace Orthanc |
46 { | 47 { |
47 class DicomInstanceToStore; | 48 class DicomInstanceToStore; |
223 bool isExecuteLuaEnabled_; | 224 bool isExecuteLuaEnabled_; |
224 bool overwriteInstances_; | 225 bool overwriteInstances_; |
225 | 226 |
226 std::unique_ptr<StorageCommitmentReports> storageCommitmentReports_; | 227 std::unique_ptr<StorageCommitmentReports> storageCommitmentReports_; |
227 | 228 |
229 bool transcodingEnabled_; | |
230 std::unique_ptr<IDicomTranscoder> dcmtkTranscoder_; | |
231 | |
228 public: | 232 public: |
229 class DicomCacheLocker : public boost::noncopyable | 233 class DicomCacheLocker : public boost::noncopyable |
230 { | 234 { |
231 private: | 235 private: |
232 ServerContext& that_; | 236 ServerContext& that_; |
448 | 452 |
449 StorageCommitmentReports& GetStorageCommitmentReports() | 453 StorageCommitmentReports& GetStorageCommitmentReports() |
450 { | 454 { |
451 return *storageCommitmentReports_; | 455 return *storageCommitmentReports_; |
452 } | 456 } |
457 | |
458 void StoreWithTranscoding(std::string& sopClassUid, | |
459 std::string& sopInstanceUid, | |
460 DicomStoreUserConnection& connection, | |
461 const std::string& dicom, | |
462 bool hasMoveOriginator, | |
463 const std::string& moveOriginatorAet, | |
464 uint16_t moveOriginatorId); | |
465 | |
466 // This method can be used even if "TranscodingEnabled" is set to "false" | |
467 bool TranscodeMemoryBuffer(std::string& target, | |
468 bool& hasSopInstanceUidChanged, | |
469 const std::string& source, | |
470 const std::set<DicomTransferSyntax>& allowedSyntaxes, | |
471 bool allowNewSopInstanceUid); | |
453 }; | 472 }; |
454 } | 473 } |