Mercurial > hg > orthanc
comparison OrthancServer/Sources/ServerJobs/DicomMoveScuJob.cpp @ 5025:afa427f65444
Added an Asynchronous mode to /modalities/../move
author | Alain Mazy <am@osimis.io> |
---|---|
date | Tue, 21 Jun 2022 10:55:45 +0200 |
parents | 6eff25f70121 |
children | 0ea402b4d901 |
comparison
equal
deleted
inserted
replaced
5021:559b35d18ef7 | 5025:afa427f65444 |
---|---|
105 * added if creating a ParsedDicomFile object from a DicomMap. | 105 * added if creating a ParsedDicomFile object from a DicomMap. |
106 **/ | 106 **/ |
107 query.GetAnswer(query.GetSize() - 1).Remove(DICOM_TAG_SPECIFIC_CHARACTER_SET); | 107 query.GetAnswer(query.GetSize() - 1).Remove(DICOM_TAG_SPECIFIC_CHARACTER_SET); |
108 } | 108 } |
109 | 109 |
110 | 110 // this method is used to implement the retrieve part of a Q&R |
111 // it keeps only the main dicom tags from the C-Find answer | |
111 void DicomMoveScuJob::AddFindAnswer(const DicomMap& answer) | 112 void DicomMoveScuJob::AddFindAnswer(const DicomMap& answer) |
112 { | 113 { |
113 DicomMap item; | 114 DicomMap item; |
114 item.CopyTagIfExists(answer, DICOM_TAG_QUERY_RETRIEVE_LEVEL); | 115 item.CopyTagIfExists(answer, DICOM_TAG_QUERY_RETRIEVE_LEVEL); |
115 item.CopyTagIfExists(answer, DICOM_TAG_PATIENT_ID); | 116 item.CopyTagIfExists(answer, DICOM_TAG_PATIENT_ID); |
120 AddToQuery(query_, item); | 121 AddToQuery(query_, item); |
121 | 122 |
122 AddCommand(new Command(*this, answer)); | 123 AddCommand(new Command(*this, answer)); |
123 } | 124 } |
124 | 125 |
126 // this method is used to implement a C-Move | |
127 // it keeps all tags from the C-Move query | |
128 void DicomMoveScuJob::AddQuery(const DicomMap& query) | |
129 { | |
130 AddToQuery(query_, query); | |
131 AddCommand(new Command(*this, query)); | |
132 } | |
125 | 133 |
126 void DicomMoveScuJob::AddFindAnswer(QueryRetrieveHandler& query, | 134 void DicomMoveScuJob::AddFindAnswer(QueryRetrieveHandler& query, |
127 size_t i) | 135 size_t i) |
128 { | 136 { |
129 DicomMap answer; | 137 DicomMap answer; |