|
PACS System 0.1.0
PACS DICOM system library
|
#include <dimse_message.h>

Public Types | |
| using | encoded_message = std::pair<std::vector<uint8_t>, std::vector<uint8_t>> |
| Encoded message result type: pair of (command_set_bytes, dataset_bytes) | |
Public Member Functions | |
| dimse_message (command_field cmd, uint16_t message_id) | |
| Construct a new DIMSE message. | |
| dimse_message ()=default | |
| Default constructor (creates an invalid message) | |
| dimse_message (const dimse_message &)=default | |
| Copy constructor. | |
| dimse_message (dimse_message &&) noexcept=default | |
| Move constructor. | |
| auto | operator= (const dimse_message &) -> dimse_message &=default |
| Copy assignment. | |
| auto | operator= (dimse_message &&) noexcept -> dimse_message &=default |
| Move assignment. | |
| ~dimse_message ()=default | |
| Destructor. | |
| auto | command () const noexcept -> command_field |
| Get the command field. | |
| auto | message_id () const noexcept -> uint16_t |
| Get the message ID. | |
| auto | command_set () noexcept -> core::dicom_dataset & |
| Get mutable reference to the command set. | |
| auto | command_set () const noexcept -> const core::dicom_dataset & |
| Get const reference to the command set. | |
| auto | has_dataset () const noexcept -> bool |
| Check if the message has an associated data set. | |
| auto | dataset () -> kcenon::pacs::Result< std::reference_wrapper< core::dicom_dataset > > |
| Get mutable reference to the data set. | |
| auto | dataset () const -> kcenon::pacs::Result< std::reference_wrapper< const core::dicom_dataset > > |
| Get const reference to the data set. | |
| void | set_dataset (core::dicom_dataset ds) |
| Set the data set for this message. | |
| void | clear_dataset () noexcept |
| Remove the data set from this message. | |
| auto | status () const -> status_code |
| Get the status code (for response messages) | |
| void | set_status (status_code status) |
| Set the status code (for response messages) | |
| auto | affected_sop_class_uid () const -> std::string |
| Get the Affected SOP Class UID. | |
| void | set_affected_sop_class_uid (std::string_view uid) |
| Set the Affected SOP Class UID. | |
| auto | affected_sop_instance_uid () const -> std::string |
| Get the Affected SOP Instance UID. | |
| void | set_affected_sop_instance_uid (std::string_view uid) |
| Set the Affected SOP Instance UID. | |
| auto | priority () const -> uint16_t |
| Get the priority. | |
| void | set_priority (uint16_t priority) |
| Set the priority. | |
| auto | message_id_responded_to () const -> uint16_t |
| Get the Message ID Being Responded To (for responses) | |
| void | set_message_id_responded_to (uint16_t id) |
| Set the Message ID Being Responded To (for responses) | |
| auto | requested_sop_class_uid () const -> std::string |
| Get the Requested SOP Class UID (for N-SET, N-GET, N-ACTION, N-DELETE) | |
| void | set_requested_sop_class_uid (std::string_view uid) |
| Set the Requested SOP Class UID. | |
| auto | requested_sop_instance_uid () const -> std::string |
| Get the Requested SOP Instance UID (for N-SET, N-GET, N-ACTION, N-DELETE) | |
| void | set_requested_sop_instance_uid (std::string_view uid) |
| Set the Requested SOP Instance UID. | |
| auto | event_type_id () const -> std::optional< uint16_t > |
| Get the Event Type ID (for N-EVENT-REPORT) | |
| void | set_event_type_id (uint16_t type_id) |
| Set the Event Type ID. | |
| auto | action_type_id () const -> std::optional< uint16_t > |
| Get the Action Type ID (for N-ACTION) | |
| void | set_action_type_id (uint16_t type_id) |
| Set the Action Type ID. | |
| auto | attribute_identifier_list () const -> std::vector< core::dicom_tag > |
| Get the Attribute Identifier List (for N-GET) | |
| void | set_attribute_identifier_list (const std::vector< core::dicom_tag > &tags) |
| Set the Attribute Identifier List. | |
| auto | remaining_subops () const -> std::optional< uint16_t > |
| Get the number of remaining sub-operations. | |
| void | set_remaining_subops (uint16_t count) |
| Set the number of remaining sub-operations. | |
| auto | completed_subops () const -> std::optional< uint16_t > |
| Get the number of completed sub-operations. | |
| void | set_completed_subops (uint16_t count) |
| Set the number of completed sub-operations. | |
| auto | failed_subops () const -> std::optional< uint16_t > |
| Get the number of failed sub-operations. | |
| void | set_failed_subops (uint16_t count) |
| Set the number of failed sub-operations. | |
| auto | warning_subops () const -> std::optional< uint16_t > |
| Get the number of warning sub-operations. | |
| void | set_warning_subops (uint16_t count) |
| Set the number of warning sub-operations. | |
| auto | is_valid () const noexcept -> bool |
| Check if the message is valid. | |
| auto | is_request () const noexcept -> bool |
| Check if this is a request message. | |
| auto | is_response () const noexcept -> bool |
| Check if this is a response message. | |
Static Public Member Functions | |
| static auto | encode (const dimse_message &msg, const encoding::transfer_syntax &dataset_ts) -> dimse_result< encoded_message > |
| Encode the DIMSE message to bytes. | |
| static auto | decode (std::span< const uint8_t > command_data, std::span< const uint8_t > dataset_data, const encoding::transfer_syntax &dataset_ts) -> dimse_result< dimse_message > |
| Decode a DIMSE message from bytes. | |
Private Member Functions | |
| void | update_data_set_type () |
| Update the CommandDataSetType field based on dataset presence. | |
| void | update_command_group_length () |
| Calculate and set CommandGroupLength. | |
Private Attributes | |
| command_field | command_ {} |
| uint16_t | message_id_ {0} |
| core::dicom_dataset | command_set_ |
| std::optional< core::dicom_dataset > | dataset_ |
Definition at line 202 of file dimse_message.h.
| using kcenon::pacs::network::dimse::dimse_message::encoded_message = std::pair<std::vector<uint8_t>, std::vector<uint8_t>> |
Encoded message result type: pair of (command_set_bytes, dataset_bytes)
Definition at line 488 of file dimse_message.h.
| kcenon::pacs::network::dimse::dimse_message::dimse_message | ( | command_field | cmd, |
| uint16_t | message_id ) |
Construct a new DIMSE message.
| cmd | The command field (type of operation) |
| message_id | Unique message identifier |
Definition at line 35 of file dimse_message.cpp.
References command_set_, message_id(), kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_command_field, kcenon::pacs::network::dimse::tag_message_id, update_data_set_type(), and kcenon::pacs::encoding::US.

|
default |
Default constructor (creates an invalid message)
|
default |
Copy constructor.
|
defaultnoexcept |
Move constructor.
|
default |
|
nodiscard |
Get the Action Type ID (for N-ACTION)
Definition at line 174 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), and kcenon::pacs::network::dimse::tag_action_type_id.
Referenced by kcenon::pacs::services::print_scp::handle_n_action(), kcenon::pacs::services::storage_commitment_scp::handle_n_action(), kcenon::pacs::services::ups_push_scp::handle_n_action(), and kcenon::pacs::services::ups_watch_scp::handle_n_action().


|
nodiscard |
Get the Affected SOP Class UID.
Definition at line 112 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_string(), and kcenon::pacs::network::dimse::tag_affected_sop_class_uid.
Referenced by kcenon::pacs::network::dicom_server::dispatch_to_service(), kcenon::pacs::services::retrieve_scp::handle_c_get(), kcenon::pacs::services::retrieve_scp::handle_c_move(), kcenon::pacs::services::query_scp::handle_message(), kcenon::pacs::services::storage_scp::handle_message(), kcenon::pacs::services::ups_query_scp::handle_message(), kcenon::pacs::services::worklist_scp::handle_message(), kcenon::pacs::services::print_scp::handle_n_action(), kcenon::pacs::services::storage_commitment_scp::handle_n_action(), kcenon::pacs::services::mpps_scp::handle_n_create(), kcenon::pacs::services::print_scp::handle_n_create(), kcenon::pacs::services::ups_push_scp::handle_n_create(), kcenon::pacs::services::print_scp::handle_n_delete(), kcenon::pacs::services::print_scp::handle_n_get(), kcenon::pacs::services::mpps_scp::handle_n_set(), and kcenon::pacs::services::print_scp::handle_n_set().


|
nodiscard |
Get the Affected SOP Instance UID.
Definition at line 121 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_string(), and kcenon::pacs::network::dimse::tag_affected_sop_instance_uid.
Referenced by kcenon::pacs::services::print_scp::create_film_box(), kcenon::pacs::services::print_scp::create_film_session(), kcenon::pacs::services::ups_watch_scu::handle_event_report(), kcenon::pacs::services::storage_scp::handle_message(), kcenon::pacs::services::print_scp::handle_n_action(), kcenon::pacs::services::ups_push_scp::handle_n_action(), kcenon::pacs::services::ups_watch_scp::handle_n_action(), kcenon::pacs::services::mpps_scp::handle_n_create(), kcenon::pacs::services::ups_push_scp::handle_n_create(), kcenon::pacs::services::print_scp::handle_n_delete(), kcenon::pacs::services::print_scp::handle_n_get(), kcenon::pacs::services::mpps_scp::handle_n_set(), kcenon::pacs::services::print_scp::handle_n_set(), and kcenon::pacs::services::ups_push_scp::handle_n_set().


|
nodiscard |
Get the Attribute Identifier List (for N-GET)
Definition at line 182 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get(), and kcenon::pacs::network::dimse::tag_attribute_identifier_list.
Referenced by kcenon::pacs::services::n_get_scp::handle_message().


|
noexcept |
Remove the data set from this message.
Definition at line 91 of file dimse_message.cpp.
References dataset_, and update_data_set_type().

|
nodiscardnoexcept |
Get the command field.
Definition at line 48 of file dimse_message.cpp.
References command_.
Referenced by kcenon::pacs::network::v2::dicom_association_handler::dispatch_to_service(), kcenon::pacs::services::storage_commitment_scu::handle_event_report(), kcenon::pacs::services::ups_watch_scu::handle_event_report(), kcenon::pacs::services::mpps_scp::handle_message(), kcenon::pacs::services::n_get_scp::handle_message(), kcenon::pacs::services::print_scp::handle_message(), kcenon::pacs::services::query_scp::handle_message(), kcenon::pacs::services::retrieve_scp::handle_message(), kcenon::pacs::services::storage_commitment_scp::handle_message(), kcenon::pacs::services::storage_scp::handle_message(), kcenon::pacs::services::ups_push_scp::handle_message(), kcenon::pacs::services::ups_query_scp::handle_message(), kcenon::pacs::services::ups_watch_scp::handle_message(), kcenon::pacs::services::verification_scp::handle_message(), and kcenon::pacs::services::worklist_scp::handle_message().

|
nodiscardnoexcept |
Get const reference to the command set.
Definition at line 60 of file dimse_message.cpp.
References command_set_.
|
nodiscardnoexcept |
Get mutable reference to the command set.
Definition at line 56 of file dimse_message.cpp.
References command_set_.
Referenced by kcenon::pacs::services::retrieve_scp::get_move_destination(), kcenon::pacs::services::storage_commitment_scp::handle_n_action(), kcenon::pacs::services::print_scp::handle_n_get(), kcenon::pacs::services::mpps_scp::handle_n_set(), kcenon::pacs::services::print_scp::handle_n_set(), and kcenon::pacs::services::ups_push_scp::handle_n_set().

|
nodiscard |
Get the number of completed sub-operations.
Definition at line 235 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), and kcenon::pacs::network::dimse::tag_number_of_completed_subops.

|
nodiscard |
Get mutable reference to the data set.
Definition at line 72 of file dimse_message.cpp.
References kcenon::pacs::network::dimse::invalid_data_format.
Referenced by kcenon::pacs::services::print_scp::create_film_box(), kcenon::pacs::services::print_scp::create_film_session(), encode(), kcenon::pacs::services::retrieve_scp::handle_c_get(), kcenon::pacs::services::retrieve_scp::handle_c_move(), kcenon::pacs::services::storage_commitment_scu::handle_event_report(), kcenon::pacs::services::ups_watch_scu::handle_event_report(), kcenon::pacs::services::query_scp::handle_message(), kcenon::pacs::services::storage_scp::handle_message(), kcenon::pacs::services::ups_query_scp::handle_message(), kcenon::pacs::services::worklist_scp::handle_message(), kcenon::pacs::services::storage_commitment_scp::handle_n_action(), kcenon::pacs::services::ups_push_scp::handle_n_action(), kcenon::pacs::services::mpps_scp::handle_n_create(), kcenon::pacs::services::ups_push_scp::handle_n_create(), kcenon::pacs::services::mpps_scp::handle_n_set(), kcenon::pacs::services::print_scp::handle_n_set(), and kcenon::pacs::services::ups_push_scp::handle_n_set().

|
nodiscard |
Get const reference to the data set.
Definition at line 79 of file dimse_message.cpp.
References dataset_, and kcenon::pacs::network::dimse::invalid_data_format.
|
staticnodiscard |
Decode a DIMSE message from bytes.
| command_data | The encoded command set (Implicit VR LE) |
| dataset_data | The encoded data set (per transfer syntax) |
| dataset_ts | The transfer syntax of the data set |
Definition at line 293 of file dimse_message.cpp.
References command_set_, dataset_, kcenon::pacs::encoding::explicit_vr_codec::decode(), kcenon::pacs::encoding::implicit_vr_codec::decode(), kcenon::pacs::network::dimse::decoding_error, kcenon::pacs::encoding::implicit, kcenon::pacs::network::dimse::is_request(), kcenon::pacs::network::dimse::missing_required_field, kcenon::pacs::network::dimse::tag_command_field, and kcenon::pacs::network::dimse::tag_message_id.
Referenced by kcenon::pacs::network::v2::dicom_association_handler::handle_p_data_tf().


|
staticnodiscard |
Encode the DIMSE message to bytes.
| msg | The message to encode |
| dataset_ts | The transfer syntax for the data set |
The command set is always encoded using Implicit VR Little Endian. The data set uses the specified transfer syntax.
Definition at line 266 of file dimse_message.cpp.
References command_set_, dataset(), kcenon::pacs::encoding::explicit_vr_codec::encode(), kcenon::pacs::encoding::implicit_vr_codec::encode(), has_dataset(), kcenon::pacs::encoding::implicit, and update_command_group_length().

|
nodiscard |
Get the Event Type ID (for N-EVENT-REPORT)
Definition at line 166 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), and kcenon::pacs::network::dimse::tag_event_type_id.
Referenced by kcenon::pacs::services::ups_watch_scu::handle_event_report().


|
nodiscard |
Get the number of failed sub-operations.
Definition at line 244 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), and kcenon::pacs::network::dimse::tag_number_of_failed_subops.

|
nodiscardnoexcept |
Check if the message has an associated data set.
Definition at line 68 of file dimse_message.cpp.
References dataset_.
Referenced by kcenon::pacs::services::print_scp::create_film_box(), kcenon::pacs::services::print_scp::create_film_session(), encode(), kcenon::pacs::services::retrieve_scp::handle_c_get(), kcenon::pacs::services::retrieve_scp::handle_c_move(), kcenon::pacs::services::storage_commitment_scu::handle_event_report(), kcenon::pacs::services::ups_watch_scu::handle_event_report(), kcenon::pacs::services::query_scp::handle_message(), kcenon::pacs::services::storage_scp::handle_message(), kcenon::pacs::services::ups_query_scp::handle_message(), kcenon::pacs::services::worklist_scp::handle_message(), kcenon::pacs::services::storage_commitment_scp::handle_n_action(), kcenon::pacs::services::ups_push_scp::handle_n_action(), kcenon::pacs::services::mpps_scp::handle_n_create(), kcenon::pacs::services::ups_push_scp::handle_n_create(), kcenon::pacs::services::mpps_scp::handle_n_set(), kcenon::pacs::services::print_scp::handle_n_set(), and kcenon::pacs::services::ups_push_scp::handle_n_set().

|
nodiscardnoexcept |
Check if this is a request message.
Definition at line 348 of file dimse_message.cpp.
References command_, and kcenon::pacs::network::dimse::is_request().

|
nodiscardnoexcept |
Check if this is a response message.
Definition at line 352 of file dimse_message.cpp.
References command_, and kcenon::pacs::network::dimse::is_response().

|
nodiscardnoexcept |
Check if the message is valid.
Definition at line 343 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::contains(), kcenon::pacs::network::dimse::tag_command_field, and kcenon::pacs::network::dimse::tag_message_id.
Referenced by kcenon::pacs::network::association::send_dimse().


|
nodiscardnoexcept |
Get the message ID.
Definition at line 52 of file dimse_message.cpp.
References message_id_.
Referenced by kcenon::pacs::services::print_scp::create_film_box(), kcenon::pacs::services::print_scp::create_film_session(), dimse_message(), kcenon::pacs::services::retrieve_scp::handle_c_get(), kcenon::pacs::services::retrieve_scp::handle_c_move(), kcenon::pacs::services::n_get_scp::handle_message(), kcenon::pacs::services::query_scp::handle_message(), kcenon::pacs::services::storage_scp::handle_message(), kcenon::pacs::services::ups_query_scp::handle_message(), kcenon::pacs::services::verification_scp::handle_message(), kcenon::pacs::services::worklist_scp::handle_message(), kcenon::pacs::services::print_scp::handle_n_action(), kcenon::pacs::services::storage_commitment_scp::handle_n_action(), kcenon::pacs::services::ups_push_scp::handle_n_action(), kcenon::pacs::services::ups_watch_scp::handle_n_action(), kcenon::pacs::services::mpps_scp::handle_n_create(), kcenon::pacs::services::print_scp::handle_n_create(), kcenon::pacs::services::ups_push_scp::handle_n_create(), kcenon::pacs::services::print_scp::handle_n_delete(), kcenon::pacs::services::print_scp::handle_n_get(), kcenon::pacs::services::ups_push_scp::handle_n_get(), kcenon::pacs::services::mpps_scp::handle_n_set(), kcenon::pacs::services::print_scp::handle_n_set(), and kcenon::pacs::services::ups_push_scp::handle_n_set().

|
nodiscard |
Get the Message ID Being Responded To (for responses)
Definition at line 138 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), and kcenon::pacs::network::dimse::tag_message_id_responded_to.

|
default |
Copy assignment.
|
defaultnoexcept |
Move assignment.
|
nodiscard |
Get the priority.
Definition at line 130 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), kcenon::pacs::network::dimse::priority_medium, and kcenon::pacs::network::dimse::tag_priority.
Referenced by set_priority().


|
nodiscard |
Get the number of remaining sub-operations.
Definition at line 226 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), and kcenon::pacs::network::dimse::tag_number_of_remaining_subops.

|
nodiscard |
Get the Requested SOP Class UID (for N-SET, N-GET, N-ACTION, N-DELETE)
Definition at line 150 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_string(), and kcenon::pacs::network::dimse::tag_requested_sop_class_uid.
Referenced by kcenon::pacs::services::n_get_scp::handle_message().


|
nodiscard |
Get the Requested SOP Instance UID (for N-SET, N-GET, N-ACTION, N-DELETE)
Definition at line 158 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_string(), and kcenon::pacs::network::dimse::tag_requested_sop_instance_uid.
Referenced by kcenon::pacs::services::n_get_scp::handle_message(), kcenon::pacs::services::ups_push_scp::handle_n_action(), kcenon::pacs::services::ups_watch_scp::handle_n_action(), and kcenon::pacs::services::ups_push_scp::handle_n_get().


| void kcenon::pacs::network::dimse::dimse_message::set_action_type_id | ( | uint16_t | type_id | ) |
Set the Action Type ID.
| type_id | The action type ID |
Definition at line 178 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_action_type_id, and kcenon::pacs::encoding::US.
Referenced by kcenon::pacs::network::dimse::make_n_action_rq(), and kcenon::pacs::network::dimse::make_n_action_rsp().


| void kcenon::pacs::network::dimse::dimse_message::set_affected_sop_class_uid | ( | std::string_view | uid | ) |
Set the Affected SOP Class UID.
| uid | The SOP Class UID |
Definition at line 116 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_string(), kcenon::pacs::network::dimse::tag_affected_sop_class_uid, kcenon::pacs::encoding::UI, and uid.
Referenced by kcenon::pacs::network::dimse::make_c_echo_rq(), kcenon::pacs::network::dimse::make_c_echo_rsp(), kcenon::pacs::network::dimse::make_c_find_rq(), kcenon::pacs::network::dimse::make_c_find_rsp(), kcenon::pacs::network::dimse::make_c_store_rq(), kcenon::pacs::network::dimse::make_c_store_rsp(), kcenon::pacs::network::dimse::make_n_action_rsp(), kcenon::pacs::network::dimse::make_n_create_rq(), kcenon::pacs::network::dimse::make_n_create_rsp(), kcenon::pacs::network::dimse::make_n_delete_rsp(), kcenon::pacs::network::dimse::make_n_event_report_rq(), kcenon::pacs::network::dimse::make_n_event_report_rsp(), kcenon::pacs::network::dimse::make_n_get_rsp(), and kcenon::pacs::network::dimse::make_n_set_rsp().


| void kcenon::pacs::network::dimse::dimse_message::set_affected_sop_instance_uid | ( | std::string_view | uid | ) |
Set the Affected SOP Instance UID.
| uid | The SOP Instance UID |
Definition at line 125 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_string(), kcenon::pacs::network::dimse::tag_affected_sop_instance_uid, kcenon::pacs::encoding::UI, and uid.
Referenced by kcenon::pacs::network::dimse::make_c_store_rq(), kcenon::pacs::network::dimse::make_c_store_rsp(), kcenon::pacs::network::dimse::make_n_action_rsp(), kcenon::pacs::network::dimse::make_n_create_rq(), kcenon::pacs::network::dimse::make_n_create_rsp(), kcenon::pacs::network::dimse::make_n_delete_rsp(), kcenon::pacs::network::dimse::make_n_event_report_rq(), kcenon::pacs::network::dimse::make_n_event_report_rsp(), kcenon::pacs::network::dimse::make_n_get_rsp(), and kcenon::pacs::network::dimse::make_n_set_rsp().


| void kcenon::pacs::network::dimse::dimse_message::set_attribute_identifier_list | ( | const std::vector< core::dicom_tag > & | tags | ) |
Set the Attribute Identifier List.
| tags | Vector of tags to retrieve |
Definition at line 205 of file dimse_message.cpp.
References kcenon::pacs::encoding::AT, command_set_, kcenon::pacs::core::dicom_dataset::insert(), and kcenon::pacs::network::dimse::tag_attribute_identifier_list.
Referenced by kcenon::pacs::network::dimse::make_n_get_rq().


| void kcenon::pacs::network::dimse::dimse_message::set_completed_subops | ( | uint16_t | count | ) |
Set the number of completed sub-operations.
Definition at line 239 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_number_of_completed_subops, and kcenon::pacs::encoding::US.

| void kcenon::pacs::network::dimse::dimse_message::set_dataset | ( | core::dicom_dataset | ds | ) |
Set the data set for this message.
| ds | The data set to associate with this message |
Definition at line 86 of file dimse_message.cpp.
References dataset_, and update_data_set_type().

| void kcenon::pacs::network::dimse::dimse_message::set_event_type_id | ( | uint16_t | type_id | ) |
Set the Event Type ID.
| type_id | The event type ID |
Definition at line 170 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_event_type_id, and kcenon::pacs::encoding::US.
Referenced by kcenon::pacs::network::dimse::make_n_event_report_rq(), and kcenon::pacs::network::dimse::make_n_event_report_rsp().


| void kcenon::pacs::network::dimse::dimse_message::set_failed_subops | ( | uint16_t | count | ) |
Set the number of failed sub-operations.
Definition at line 248 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_number_of_failed_subops, and kcenon::pacs::encoding::US.

| void kcenon::pacs::network::dimse::dimse_message::set_message_id_responded_to | ( | uint16_t | id | ) |
Set the Message ID Being Responded To (for responses)
| id | The message ID being responded to |
Definition at line 142 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_message_id_responded_to, and kcenon::pacs::encoding::US.
Referenced by kcenon::pacs::network::dimse::make_c_echo_rsp(), kcenon::pacs::network::dimse::make_c_find_rsp(), kcenon::pacs::network::dimse::make_c_store_rsp(), kcenon::pacs::network::dimse::make_n_action_rsp(), kcenon::pacs::network::dimse::make_n_create_rsp(), kcenon::pacs::network::dimse::make_n_delete_rsp(), kcenon::pacs::network::dimse::make_n_event_report_rsp(), kcenon::pacs::network::dimse::make_n_get_rsp(), and kcenon::pacs::network::dimse::make_n_set_rsp().


| void kcenon::pacs::network::dimse::dimse_message::set_priority | ( | uint16_t | priority | ) |
Set the priority.
| priority | The priority value |
Definition at line 134 of file dimse_message.cpp.
References command_set_, priority(), kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_priority, and kcenon::pacs::encoding::US.
Referenced by kcenon::pacs::network::dimse::make_c_find_rq(), and kcenon::pacs::network::dimse::make_c_store_rq().


| void kcenon::pacs::network::dimse::dimse_message::set_remaining_subops | ( | uint16_t | count | ) |
Set the number of remaining sub-operations.
Definition at line 230 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_number_of_remaining_subops, and kcenon::pacs::encoding::US.

| void kcenon::pacs::network::dimse::dimse_message::set_requested_sop_class_uid | ( | std::string_view | uid | ) |
Set the Requested SOP Class UID.
| uid | The SOP Class UID |
Definition at line 154 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_string(), kcenon::pacs::network::dimse::tag_requested_sop_class_uid, kcenon::pacs::encoding::UI, and uid.
Referenced by kcenon::pacs::network::dimse::make_n_action_rq(), kcenon::pacs::network::dimse::make_n_delete_rq(), kcenon::pacs::network::dimse::make_n_get_rq(), and kcenon::pacs::network::dimse::make_n_set_rq().


| void kcenon::pacs::network::dimse::dimse_message::set_requested_sop_instance_uid | ( | std::string_view | uid | ) |
Set the Requested SOP Instance UID.
| uid | The SOP Instance UID |
Definition at line 162 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_string(), kcenon::pacs::network::dimse::tag_requested_sop_instance_uid, kcenon::pacs::encoding::UI, and uid.
Referenced by kcenon::pacs::network::dimse::make_n_action_rq(), kcenon::pacs::network::dimse::make_n_delete_rq(), kcenon::pacs::network::dimse::make_n_get_rq(), and kcenon::pacs::network::dimse::make_n_set_rq().


| void kcenon::pacs::network::dimse::dimse_message::set_status | ( | status_code | status | ) |
Set the status code (for response messages)
| status | The status code to set |
Definition at line 104 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_numeric(), status(), kcenon::pacs::network::dimse::tag_status, and kcenon::pacs::encoding::US.
Referenced by kcenon::pacs::network::dimse::make_c_echo_rsp(), kcenon::pacs::network::dimse::make_c_find_rsp(), kcenon::pacs::network::dimse::make_c_store_rsp(), kcenon::pacs::network::dimse::make_n_action_rsp(), kcenon::pacs::network::dimse::make_n_create_rsp(), kcenon::pacs::network::dimse::make_n_delete_rsp(), kcenon::pacs::network::dimse::make_n_event_report_rsp(), kcenon::pacs::network::dimse::make_n_get_rsp(), and kcenon::pacs::network::dimse::make_n_set_rsp().


| void kcenon::pacs::network::dimse::dimse_message::set_warning_subops | ( | uint16_t | count | ) |
Set the number of warning sub-operations.
Definition at line 257 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_number_of_warning_subops, and kcenon::pacs::encoding::US.

|
nodiscard |
Get the status code (for response messages)
Definition at line 100 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), and kcenon::pacs::network::dimse::tag_status.
Referenced by set_status().


|
private |
Calculate and set CommandGroupLength.
Definition at line 370 of file dimse_message.cpp.
References command_set_, kcenon::pacs::encoding::implicit_vr_codec::encode(), kcenon::pacs::core::dicom_dataset::remove(), kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_command_group_length, and kcenon::pacs::encoding::UL.
Referenced by encode().


|
private |
Update the CommandDataSetType field based on dataset presence.
Definition at line 360 of file dimse_message.cpp.
References kcenon::pacs::network::dimse::command_data_set_type_null, kcenon::pacs::network::dimse::command_data_set_type_present, command_set_, dataset_, kcenon::pacs::core::dicom_dataset::set_numeric(), kcenon::pacs::network::dimse::tag_command_data_set_type, and kcenon::pacs::encoding::US.
Referenced by clear_dataset(), dimse_message(), and set_dataset().


|
nodiscard |
Get the number of warning sub-operations.
Definition at line 253 of file dimse_message.cpp.
References command_set_, kcenon::pacs::core::dicom_dataset::get_numeric(), and kcenon::pacs::network::dimse::tag_number_of_warning_subops.

|
private |
Definition at line 546 of file dimse_message.h.
Referenced by command(), is_request(), and is_response().
|
private |
Definition at line 548 of file dimse_message.h.
Referenced by action_type_id(), affected_sop_class_uid(), affected_sop_instance_uid(), attribute_identifier_list(), command_set(), command_set(), completed_subops(), decode(), dimse_message(), encode(), event_type_id(), failed_subops(), is_valid(), message_id_responded_to(), priority(), remaining_subops(), requested_sop_class_uid(), requested_sop_instance_uid(), set_action_type_id(), set_affected_sop_class_uid(), set_affected_sop_instance_uid(), set_attribute_identifier_list(), set_completed_subops(), set_event_type_id(), set_failed_subops(), set_message_id_responded_to(), set_priority(), set_remaining_subops(), set_requested_sop_class_uid(), set_requested_sop_instance_uid(), set_status(), set_warning_subops(), status(), update_command_group_length(), update_data_set_type(), and warning_subops().
|
private |
Definition at line 549 of file dimse_message.h.
Referenced by clear_dataset(), dataset(), decode(), has_dataset(), set_dataset(), and update_data_set_type().
|
private |
Definition at line 547 of file dimse_message.h.
Referenced by message_id().