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 
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::registry::NumberOfCompletedSuboperations
Tag const NumberOfCompletedSuboperations(0x0000, 0x1021)
odil::registry::AffectedSOPClassUID
Tag const AffectedSOPClassUID(0x0000, 0x0002)
odil::message::CMoveResponse::CMoveResponse
CMoveResponse(Value::Integer message_id_being_responded_to, Value::Integer status)
Create an move response with given Message ID, and status.
ODIL_MESSAGE_OPTIONAL_FIELD_STRING_MACRO
#define ODIL_MESSAGE_OPTIONAL_FIELD_STRING_MACRO(name, tag)
Definition: Message.h:70
odil::message::CMoveResponse::CMoveResponse
CMoveResponse(Value::Integer message_id_being_responded_to, Value::Integer status, std::shared_ptr< DataSet > dataset)
Create an move response with given Message ID, status, and data set.
odil::message::CMoveResponse::Status
Status
C-MOVE status codes, PS 3.4, C.4.2.1.5.
Definition: CMoveResponse.h:30
Response.h
odil
Definition: Association.h:25
ODIL_API
#define ODIL_API
Definition: odil.h:28
odil::registry::NumberOfWarningSuboperations
Tag const NumberOfWarningSuboperations(0x0000, 0x1023)
odil.h
odil::registry::NumberOfRemainingSuboperations
Tag const NumberOfRemainingSuboperations(0x0000, 0x1020)
ODIL_MESSAGE_OPTIONAL_FIELD_INTEGER_MACRO
#define ODIL_MESSAGE_OPTIONAL_FIELD_INTEGER_MACRO(name, tag)
Definition: Message.h:67
registry.h
odil::registry::MessageID
Tag const MessageID(0x0000, 0x0110)
odil::Value::Integer
int64_t Integer
Integer type.
Definition: Value.h:42
odil::message::Response
Base class for all DIMSE response messages.
Definition: Response.h:25
DataSet.h
Value.h
odil::message::CMoveResponse
C-MOVE-RSP message.
Definition: CMoveResponse.h:26
odil::registry::NumberOfFailedSuboperations
Tag const NumberOfFailedSuboperations(0x0000, 0x1022)
odil::message::CMoveResponse::CMoveResponse
CMoveResponse(std::shared_ptr< Message > message)
Create a C-MOVE-RSP from a generic Message.
odil::message::Message
Base class for all DIMSE messages.
Definition: Message.h:77