9 #ifndef _aa2965aa_e891_4713_9c90_e8eacd2944ea 10 #define _aa2965aa_e891_4713_9c90_e8eacd2944ea 17 #include "odil/DataSet.h" 18 #include "odil/Element.h" 19 #include "odil/endian.h" 21 #include "odil/Value.h" 51 std::istream & stream, std::string
const & transfer_syntax,
52 bool keep_group_length=
false);
56 std::function<
bool(
Tag const &)> halt_condition = [](
Tag const &) {
return false;})
const;
67 Tag const & tag=
Tag(0xffff,0xffff),
70 static std::pair<DataSet, DataSet> read_file(
71 std::istream & stream,
72 bool keep_group_length=
false);
77 typedef void result_type;
88 std::istream & stream, VR vr, std::string
const & transfer_syntax,
89 ByteOrdering byte_ordering,
bool explicit_vr,
bool keep_group_length);
97 uint32_t read_length()
const;
100 DataSet read_item(std::istream & specific_stream)
const;
106 #endif // _aa2965aa_e891_4713_9c90_e8eacd2944ea std::string transfer_syntax
Transfer syntax used to read the file.
Definition: Reader.h:35
std::vector< String > Strings
String container.
Definition: Value.h:52
bool keep_group_length
Flag to keep or discard group length tags.
Definition: Reader.h:44
ByteOrdering byte_ordering
Endianness.
Definition: Reader.h:38
std::vector< Real > Reals
Real container.
Definition: Value.h:49
DataSet read_data_set(std::function< bool(Tag const &)> halt_condition=[](Tag const &){return false;}) const
Read a data set.
Definition: Reader.cpp:90
Element read_element(Tag const &tag=Tag(0xffff, 0xffff), DataSet const &data_set=DataSet()) const
Read an element (VR and value), try to guess the VR from the tag, partially read data set...
Definition: Reader.cpp:132
Definition: Association.cpp:39
A DICOM element tag.
Definition: Tag.h:22
Read DICOM objects from a stream.
Definition: Reader.h:28
std::istream & stream
Input stream.
Definition: Reader.h:32
std::vector< Integer > Integers
Integer container.
Definition: Value.h:46
std::vector< DataSet > DataSets
Data sets container.
Definition: Value.h:55
bool explicit_vr
Explicit-ness of the Value Representations.
Definition: Reader.h:41
std::vector< uint8_t > Binary
Binary data container.
Definition: Value.h:58
Tag read_tag() const
Read a tag.
Definition: Reader.cpp:123
DICOM Data set.
Definition: DataSet.h:66
Reader(std::istream &stream, std::string const &transfer_syntax, bool keep_group_length=false)
Build a reader, derive byte ordering and explicit-ness of VR from transfer syntax.
Definition: Reader.cpp:75
Element of a DICOM data set.
Definition: Element.h:25