Odil
A C++11 library for the DICOM standard
CMoveResponse.h
Go to the documentation of this file.
1 /*************************************************************************
2  * odil - Copyright (C) Universite de Strasbourg
3  * Distributed under the terms of the CeCILL-B license, as published by
4  * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
5  * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
6  * for details.
7  ************************************************************************/
8 
9 #ifndef _b245f6f2_50c3_4c7c_80e1_f03d9c831301
10 #define _b245f6f2_50c3_4c7c_80e1_f03d9c831301
11 
12 #include "odil/DataSet.h"
13 #include "odil/odil.h"
14 #include "odil/registry.h"
15 #include "odil/message/Response.h"
16 #include "odil/Value.h"
17 
18 namespace odil
19 {
20 
21 namespace message
22 {
23 
25 class ODIL_API CMoveResponse: public Response
26 {
27 public:
29  enum Status
30  {
31  // Failure
32  RefusedOutOfResourcesUnableToCalculateNumberOfMatches=0xA701,
33  RefusedOutOfResourcesUnableToPerformSubOperations=0xA702,
34  RefusedMoveDestinationUnknown=0xA801,
35  IdentifierDoesNotMatchSOPClass=0xA900,
36  UnableToProcess=0xC000,
37  // Warning
38  SubOperationsCompleteOneOrMoreFailuresOrWarnings=0xB000
39  };
40 
45  Value::Integer message_id_being_responded_to, Value::Integer status);
46 
52  Value::Integer message_id_being_responded_to, Value::Integer status,
53  std::shared_ptr<DataSet> dataset);
54 
60  CMoveResponse(std::shared_ptr<Message> message);
61 
64  affected_sop_class_uid, registry::AffectedSOPClassUID)
65 
67  number_of_remaining_sub_operations, registry::NumberOfRemainingSuboperations)
69  number_of_completed_sub_operations, registry::NumberOfCompletedSuboperations)
71  number_of_failed_sub_operations, registry::NumberOfFailedSuboperations)
73  number_of_warning_sub_operations, registry::NumberOfWarningSuboperations)
74 
75 private:
76  void _parse(std::shared_ptr<Message const> message);
77 };
78 
79 }
80 
81 }
82 
83 #endif // _b245f6f2_50c3_4c7c_80e1_f03d9c831301
ODIL_MESSAGE_OPTIONAL_FIELD_STRING_MACRO
#define ODIL_MESSAGE_OPTIONAL_FIELD_STRING_MACRO(name, tag)
Definition: Message.h:82
odil::registry::NumberOfFailedSuboperations
const Tag NumberOfFailedSuboperations(0x0000, 0x1022)
odil::registry::MessageID
const Tag MessageID(0x0000, 0x0110)
Response.h
odil
Definition: Association.h:24
ODIL_API
#define ODIL_API
Definition: odil.h:28
odil.h
odil::registry::NumberOfRemainingSuboperations
const Tag NumberOfRemainingSuboperations(0x0000, 0x1020)
odil::registry::NumberOfCompletedSuboperations
const Tag NumberOfCompletedSuboperations(0x0000, 0x1021)
ODIL_MESSAGE_OPTIONAL_FIELD_INTEGER_MACRO
#define ODIL_MESSAGE_OPTIONAL_FIELD_INTEGER_MACRO(name, tag)
Definition: Message.h:79
odil::registry::Status
const Tag Status(0x0000, 0x0900)
registry.h
odil::registry::NumberOfWarningSuboperations
const Tag NumberOfWarningSuboperations(0x0000, 0x1023)
odil::Value::Integer
int64_t Integer
Integer type.
Definition: Value.h:48
odil::registry::AffectedSOPClassUID
const Tag AffectedSOPClassUID(0x0000, 0x0002)
DataSet.h
Value.h
odil::message::CMoveResponse
C-MOVE-RSP message.
Definition: CMoveResponse.h:37