21#ifndef PACS_ENCODING_EXPLICIT_VR_BIG_ENDIAN_CODEC_HPP
22#define PACS_ENCODING_EXPLICIT_VR_BIG_ENDIAN_CODEC_HPP
86 [[nodiscard]]
static std::vector<uint8_t>
encode(
95 std::span<const uint8_t> data);
118 std::span<const uint8_t>& data);
140 vr_type vr, std::span<const uint8_t> data);
151 vr_type vr, std::span<const uint8_t> data);
164 std::span<const uint8_t>& data);
167 std::span<const uint8_t>& data);
Encoder/decoder for Explicit VR Big Endian transfer syntax.
static std::vector< uint8_t > from_big_endian(vr_type vr, std::span< const uint8_t > data)
Convert element value from big-endian to little-endian.
static void encode_sequence_item(std::vector< uint8_t > &buffer, const core::dicom_dataset &item)
static std::vector< uint8_t > to_big_endian(vr_type vr, std::span< const uint8_t > data)
Convert element value from little-endian to big-endian.
static result< core::dicom_dataset > decode(std::span< const uint8_t > data)
Decode bytes to a dataset using Explicit VR Big Endian.
static result< core::dicom_element > decode_undefined_length(core::dicom_tag tag, vr_type vr, std::span< const uint8_t > &data)
static result< core::dicom_element > decode_element(std::span< const uint8_t > &data)
Decode a single element from bytes.
static std::vector< uint8_t > encode_element(const core::dicom_element &element)
Encode a single element to bytes.
static void encode_sequence(std::vector< uint8_t > &buffer, const core::dicom_element &element)
static std::vector< uint8_t > encode(const core::dicom_dataset &dataset)
Encode a dataset to bytes using Explicit VR Big Endian.
static result< core::dicom_dataset > decode_sequence_item(std::span< const uint8_t > &data)
DICOM Dataset - ordered collection of Data Elements.
DICOM Data Element representation (Tag, VR, Value)
vr_type
DICOM Value Representation (VR) types.
Result<T> type aliases and helpers for PACS system.