Mercurial > hg > orthanc
comparison Core/DicomNetworking/DicomStoreUserConnection.h @ 3880:cdd0cb5ec4e4 transcoding
DicomStoreUserConnection::LookupTranscoding()
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 04 May 2020 22:10:55 +0200 |
parents | a18b34dec94a |
children | f23ab7829a8d |
comparison
equal
deleted
inserted
replaced
3879:a18b34dec94a | 3880:cdd0cb5ec4e4 |
---|---|
67 | 67 |
68 class DicomStoreUserConnection : public boost::noncopyable | 68 class DicomStoreUserConnection : public boost::noncopyable |
69 { | 69 { |
70 private: | 70 private: |
71 typedef std::map<std::string, std::set<DicomTransferSyntax> > RegisteredClasses; | 71 typedef std::map<std::string, std::set<DicomTransferSyntax> > RegisteredClasses; |
72 | |
73 // "ProposedOriginalClasses" keeps track of the storage classes | |
74 // that were proposed with a single transfer syntax | |
75 typedef std::set< std::pair<std::string, DicomTransferSyntax> > ProposedOriginalClasses; | |
72 | 76 |
73 DicomAssociationParameters parameters_; | 77 DicomAssociationParameters parameters_; |
74 boost::shared_ptr<DicomAssociation> association_; // "shared_ptr" is for PImpl | 78 boost::shared_ptr<DicomAssociation> association_; // "shared_ptr" is for PImpl |
75 RegisteredClasses registeredClasses_; | 79 RegisteredClasses registeredClasses_; |
80 ProposedOriginalClasses proposedOriginalClasses_; | |
76 bool proposeCommonClasses_; | 81 bool proposeCommonClasses_; |
77 bool proposeUncompressedSyntaxes_; | 82 bool proposeUncompressedSyntaxes_; |
78 bool proposeRetiredBigEndian_; | 83 bool proposeRetiredBigEndian_; |
79 | 84 |
80 // Return "false" if there is not enough room remaining in the association | 85 // Return "false" if there is not enough room remaining in the association |
83 | 88 |
84 void LookupParameters(std::string& sopClassUid, | 89 void LookupParameters(std::string& sopClassUid, |
85 std::string& sopInstanceUid, | 90 std::string& sopInstanceUid, |
86 DicomTransferSyntax& transferSyntax, | 91 DicomTransferSyntax& transferSyntax, |
87 DcmDataset& dataset); | 92 DcmDataset& dataset); |
93 | |
94 bool LookupPresentationContext(uint8_t& presentationContextId, | |
95 const std::string& sopClassUid, | |
96 DicomTransferSyntax transferSyntax); | |
97 | |
98 bool NegotiatePresentationContext(uint8_t& presentationContextId, | |
99 const std::string& sopClassUid, | |
100 DicomTransferSyntax transferSyntax); | |
88 | 101 |
89 void StoreInternal(std::string& sopClassUid, | 102 void StoreInternal(std::string& sopClassUid, |
90 std::string& sopInstanceUid, | 103 std::string& sopInstanceUid, |
91 DcmDataset& dataset, | 104 DcmDataset& dataset, |
92 const std::string& moveOriginatorAET, | 105 const std::string& moveOriginatorAET, |
131 } | 144 } |
132 | 145 |
133 void RegisterStorageClass(const std::string& sopClassUid, | 146 void RegisterStorageClass(const std::string& sopClassUid, |
134 DicomTransferSyntax syntax); | 147 DicomTransferSyntax syntax); |
135 | 148 |
136 // Should only be used if transcoding | |
137 // TODO => to private | |
138 bool LookupPresentationContext(uint8_t& presentationContextId, | |
139 const std::string& sopClassUid, | |
140 DicomTransferSyntax transferSyntax); | |
141 | |
142 // TODO => to private | |
143 bool NegotiatePresentationContext(uint8_t& presentationContextId, | |
144 const std::string& sopClassUid, | |
145 DicomTransferSyntax transferSyntax); | |
146 | |
147 void Store(std::string& sopClassUid, | 149 void Store(std::string& sopClassUid, |
148 std::string& sopInstanceUid, | 150 std::string& sopInstanceUid, |
149 const void* buffer, | 151 const void* buffer, |
150 size_t size, | 152 size_t size, |
151 const std::string& moveOriginatorAET, | 153 const std::string& moveOriginatorAET, |
156 const void* buffer, | 158 const void* buffer, |
157 size_t size) | 159 size_t size) |
158 { | 160 { |
159 Store(sopClassUid, sopInstanceUid, buffer, size, "", 0); // Not a C-Move | 161 Store(sopClassUid, sopInstanceUid, buffer, size, "", 0); // Not a C-Move |
160 } | 162 } |
163 | |
164 bool LookupTranscoding(std::set<DicomTransferSyntax>& acceptedSyntaxes, | |
165 const std::string& sopClassUid, | |
166 DicomTransferSyntax sourceSyntax); | |
161 }; | 167 }; |
162 } | 168 } |