10 #include "ismrmrd/export.h" 48 present_ = o.present_;
54 const Optional& operator=(
const T& v) {
60 const T* operator->()
const {
64 const T& operator*()
const {
68 operator bool()
const {
72 bool is_present()
const {
78 throw std::runtime_error(
"Access optional value, which has not been set");
87 void set(
const T& v) {
120 std::string dependencyType;
121 std::string measurementID;
126 std::string referencedSOPInstanceUID;
134 std::string patientPosition;
138 std::vector<MeasurementDependency> measurementDependency;
141 std::vector<ReferencedImageSequence> referencedImageSequence;
146 unsigned short coilNumber;
147 std::string coilName;
157 std::vector<CoilLabel> coilLabel;
165 long int H1resonanceFrequency_Hz;
178 MatrixSize(
unsigned short x,
unsigned short y)
186 MatrixSize(
unsigned short x,
unsigned short y,
unsigned short z)
223 Limit(
unsigned short minimum,
unsigned short maximum,
unsigned short center)
231 unsigned short minimum;
232 unsigned short maximum;
233 unsigned short center;
272 std::vector<UserParameterLong> userParameterLong;
273 std::vector<UserParameterDouble> userParameterDouble;
274 std::vector<UserParameterString> userParameterString;
275 std::vector<UserParameterString> userParameterBase64;
280 std::string identifier;
281 std::vector<UserParameterLong> userParameterLong;
282 std::vector<UserParameterDouble> userParameterDouble;
288 unsigned short kspace_encoding_step_1;
289 unsigned short kspace_encoding_step_2;
299 enum class TrajectoryType {
313 TrajectoryType trajectory;
329 enum class WaveformType {
340 std::string waveformName;
341 WaveformType waveformType;
353 std::vector<Encoding> encoding;
356 std::vector<WaveformInformation> waveformInformation;
361 EXPORTISMRMRD
void deserialize(
const char* xml,
IsmrmrdHeader& h);
362 EXPORTISMRMRD
void serialize(
const IsmrmrdHeader& h, std::ostream& o);
366 #endif //ISMRMRDXML_H