27 #ifndef vtkMedicalImageProperties_h
28 #define vtkMedicalImageProperties_h
30 #include "vtkIOImageModule.h"
33 class vtkMedicalImagePropertiesInternals;
52 vtkSetStringMacro(PatientName);
61 vtkSetStringMacro(PatientID);
72 vtkSetStringMacro(PatientAge);
82 static int GetAgeAsFields(
const char *age,
int &year,
int &month,
int &week,
int &day);
100 vtkSetStringMacro(PatientSex);
110 vtkSetStringMacro(PatientBirthDate);
126 vtkSetStringMacro(StudyDate);
136 vtkSetStringMacro(AcquisitionDate);
152 vtkSetStringMacro(StudyTime);
162 vtkSetStringMacro(AcquisitionTime);
172 vtkSetStringMacro(ImageDate);
210 vtkSetStringMacro(ImageTime);
219 vtkSetStringMacro(ImageNumber);
228 vtkSetStringMacro(SeriesNumber);
238 vtkSetStringMacro(SeriesDescription);
247 vtkSetStringMacro(StudyID);
256 vtkSetStringMacro(StudyDescription);
265 vtkSetStringMacro(Modality);
274 vtkSetStringMacro(Manufacturer);
283 vtkSetStringMacro(ManufacturerModelName);
292 vtkSetStringMacro(StationName);
301 vtkSetStringMacro(InstitutionName);
310 vtkSetStringMacro(ConvolutionKernel);
319 vtkSetStringMacro(SliceThickness);
329 vtkSetStringMacro(KVP);
339 vtkSetStringMacro(GantryTilt);
351 vtkSetStringMacro(EchoTime);
361 vtkSetStringMacro(EchoTrainLength);
372 vtkSetStringMacro(RepetitionTime);
381 vtkSetStringMacro(ExposureTime);
390 vtkSetStringMacro(XRayTubeCurrent);
400 vtkSetStringMacro(Exposure);
408 vtkSetVector6Macro(DirectionCosine,
double);
409 vtkGetVector6Macro(DirectionCosine,
double);
516 double DirectionCosine[6];
a simple class to control print indentation
some medical image properties.
virtual double GetSliceThicknessAsDouble()
static int GetDateAsLocale(const char *date, char *locale)
Take as input a string in ISO 8601 date (YYYY/MM/DD) and construct a locale date based on the differe...
virtual void AddUserDefinedValue(const char *name, const char *value)
virtual int GetNumberOfWindowLevelPresets()
int GetPatientBirthDateYear()
const char * GetInstanceUIDFromSliceID(int volumeidx, int sliceid)
Mapping from a sliceidx within a volumeidx into a DICOM Instance UID Some DICOM reader can populate t...
virtual double * GetNthWindowLevelPreset(int idx)
vtkMedicalImagePropertiesInternals * Internals
PIMPL Encapsulation for STL containers.
virtual const char * GetUserDefinedValue(const char *name)
int GetPatientBirthDateMonth()
virtual void Clear()
Convenience method to reset all fields to an emptry string/value.
int GetOrientationType(int volumeidx)
virtual int HasWindowLevelPreset(double w, double l)
int GetPatientBirthDateDay()
virtual void DeepCopy(vtkMedicalImageProperties *p)
Copy the contents of p to this instance.
virtual const char * GetUserDefinedNameByIndex(unsigned int idx)
virtual void RemoveWindowLevelPreset(double w, double l)
virtual int GetWindowLevelPresetIndex(double w, double l)
int GetAcquisitionDateMonth()
void SetInstanceUIDFromSliceID(int volumeidx, int sliceid, const char *uid)
int GetAcquisitionDateYear()
int GetSliceIDFromInstanceUID(int &volumeidx, const char *uid)
Provides the inverse mapping.
static int GetTimeAsFields(const char *time, int &hour, int &minute, int &second)
Take as input a string in VR:TM format (HHMMSS) and extract the different fields namely: hour,...
virtual const char * GetNthWindowLevelPresetComment(int idx)
static int GetDateAsFields(const char *date, int &year, int &month, int &day)
Take as input a string in ISO 8601 date (YYYY/MM/DD) and extract the different fields namely: year mo...
virtual double GetGantryTiltAsDouble()
~vtkMedicalImageProperties()
virtual void SetNthWindowLevelPresetComment(int idx, const char *comment)
virtual const char * GetUserDefinedValueByIndex(unsigned int idx)
virtual int GetNthWindowLevelPreset(int idx, double *w, double *l)
virtual unsigned int GetNumberOfUserDefinedValues()
int GetAcquisitionDateDay()
virtual void RemoveAllWindowLevelPresets()
char * ManufacturerModelName
static const char * GetStringFromOrientationType(unsigned int type)
void SetOrientationType(int volumeidx, int orientation)
virtual int AddWindowLevelPreset(double w, double l)
Add/Remove/Query the window/level presets that may have been associated to a medical image.
static int GetAgeAsFields(const char *age, int &year, int &month, int &week, int &day)
Take as input a string in VR=AS (DICOM PS3.5) and extract either different fields namely: year month ...
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkMedicalImageProperties()
static vtkMedicalImageProperties * New()
virtual void RemoveAllUserDefinedValues()
abstract base class for most VTK objects
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.