vega
|
This namespace contains all the manipulators used to work with DataElement data. More...
This namespace contains all the manipulators used to work with DataElement data.
A DICOM file is composed of a nested structure of many DataElements and DataSets. A DataElement can contain a wide variety of data determined by its value representation. For instance, data could be an array of signed 32 bit integers (vr::SL), or a string of characters that represent multiple integers separated by backspaces (vr::IS). The basic content is the same in each case, 32 bit signed integers, but the way they are stored in the DataElement is very different.
This library hides away the details of how the data is stored in the data elements through the use of manipulators. In the above case you would have the two manipulators SignedLongManipulator and IntegerStringManipulator, both of which inherit from std::vector<int32_t>
and so deal with the data in a uniform way. They know how the vector of integers should be stored in the DICOM file, so you as a developer do not have to.
There are three main manipulators that all other manipulators inherit from:
\
. For example type DecimalStringManipulator acts as a vector of DecimalString objects.In file vega/manipulator.h is defined many typedefs which give nice short names for the complicated manipulator names here. For instance, vega::manipulators::PersonNameManipulator becomes just vega::PN_Manipulator.