9 #ifndef _ca5c06d2_04f9_4009_9e98_5607e1060379 10 #define _ca5c06d2_04f9_4009_9e98_5607e1060379 15 #include "odil/DataSet.h" 16 #include "odil/Element.h" 17 #include "odil/endian.h" 18 #include "odil/odil.h" 19 #include "odil/registry.h" 21 #include "odil/Value.h" 55 static void write_binary(
56 T
const & value, std::ostream & stream, ByteOrdering byte_ordering);
59 static void write_encapsulated_pixel_data(
61 ByteOrdering byte_ordering,
bool explicit_vr);
65 std::ostream & stream,
66 ByteOrdering byte_ordering,
bool explicit_vr,
68 bool use_group_length=
false);
75 std::ostream & stream,
76 std::string
const & transfer_syntax,
78 bool use_group_length=
false);
81 void write_data_set(
DataSet const & data_set)
const;
84 void write_tag(
Tag const & tag)
const;
87 void write_element(
Element const & element)
const;
90 static void write_file(
91 DataSet const &data_set, std::ostream & stream,
93 std::string
const & transfer_syntax = registry::ExplicitVRLittleEndian,
95 bool use_group_length=
false);
101 typedef void result_type;
103 std::ostream & stream;
106 ByteOrdering byte_ordering;
109 bool use_group_length;
112 std::ostream & stream, VR vr,
113 ByteOrdering byte_ordering,
bool explicit_vr,
ItemEncoding item_encoding,
114 bool use_group_length);
117 result_type operator()(
Value::Reals const & value)
const;
123 void write_strings(T
const & sequence,
char padding)
const;
129 #include "odil/Writer.txx" 131 #endif // _ca5c06d2_04f9_4009_9e98_5607e1060379 bool explicit_vr
Explicit-ness of the Value Representations.
Definition: Writer.h:44
Write DICOM objects to a stream.
Definition: Writer.h:28
std::vector< String > Strings
String container.
Definition: Value.h:57
std::vector< Real > Reals
Real container.
Definition: Value.h:54
Definition: Association.cpp:39
A DICOM element tag.
Definition: Tag.h:24
std::vector< Integer > Integers
Integer container.
Definition: Value.h:51
std::vector< DataSet > DataSets
Data sets container.
Definition: Value.h:60
std::vector< std::vector< uint8_t > > Binary
Binary data container.
Definition: Value.h:63
ByteOrdering byte_ordering
Endianness.
Definition: Writer.h:42
ItemEncoding item_encoding
Encoding of sequence items.
Definition: Writer.h:46
DICOM Data set.
Definition: DataSet.h:29
ItemEncoding
Encodings of sequence items.
Definition: Writer.h:32
std::ostream & stream
Output stream.
Definition: Writer.h:39
Element of a DICOM data set.
Definition: Element.h:26
bool use_group_length
Presence of group length elements.
Definition: Writer.h:48