SIVIC API  0.9.26
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
svkPhilipsSMapper Class Reference

#include <svkPhilipsSMapper.h>

Inheritance diagram for svkPhilipsSMapper:

Public Member Functions

 vtkTypeMacro (svkPhilipsSMapper, vtkObject)
 
virtual void InitializeDcmHeader (map< string, string > sparMap, svkDcmHeader *header, svkMRSIOD *iod, int swapBytes)
 
virtual void ReadSDATFile (string sdatFileName, svkImageData *data)
 

Static Public Member Functions

static svkPhilipsSMapperNew ()
 

Protected Member Functions

 svkPhilipsSMapper ()
 
 ~svkPhilipsSMapper ()
 
void InitPatientModule ()
 
void InitGeneralStudyModule ()
 
void InitGeneralSeriesModule ()
 
void InitGeneralEquipmentModule ()
 
virtual void InitMultiFrameFunctionalGroupsModule ()
 
virtual void InitMultiFrameDimensionModule ()
 
virtual void InitAcquisitionContextModule ()
 
virtual void InitSharedFunctionalGroupMacros ()
 
virtual void InitPerFrameFunctionalGroupMacros ()
 
virtual void InitMRModifierMacro ()
 
virtual void InitMRTransmitCoilMacro ()
 
virtual void InitMRAveragesMacro ()
 
virtual void InitPixelMeasuresMacro ()
 
virtual void InitPlaneOrientationMacro ()
 
virtual void InitMREchoMacro ()
 
virtual void InitMRTimingAndRelatedParametersMacro ()
 
virtual void InitMRReceiveCoilMacro ()
 
virtual void InitMRSpectroscopyPulseSequenceModule ()
 
virtual void InitMRSpectroscopyModule ()
 
virtual void InitMRSpectroscopyFOVGeometryMacro ()
 
virtual void InitMRSpectroscopyDataModule ()
 
string GetDcmPatientPositionString ()
 
int GetHeaderValueAsInt (string keyString)
 
float GetHeaderValueAsFloat (string keyString)
 
virtual void SetCellSpectrum (vtkImageData *data, int x, int y, int z, int timePt, int coilNum)
 
string GetDcmDate ()
 
void VaxToFloat (const void *inbuf, void *outbuf, const int *count)
 
void GetFOV (float *fov)
 
void GetDimPnts (int *numPixels)
 

Protected Attributes

map< string, string > sparMap
 
svkDcmHeaderdcmHeader
 
float * specData
 
svkDcmHeader::DcmDataOrderingDirection dataSliceOrder
 
int numSlices
 
int numFrames
 
svkMRSIODiod
 
int swapBytes
 

Detailed Description

Mapper base class for converting from Philips SPAR header format to DICOM MR Spectrosocpy IOD/SOP Class instance. The mapper receives the SPAR fields from the svkPhilipsSReader. The spar fields are in the form of a map of of key value pairs (sparMap). Map values are key value pairs and can be accessed by key string name and value index (GetHeaderValueAsType methods).

Concrete mappers need to be implemented to map sequence specific content from Varian acquisitions to DICOM MR Spectroscopy. It is the svkPhilipsSReader's responsibility to select the appropriate svkPhilipsSMapper instance for any give data set.

Constructor & Destructor Documentation

svkPhilipsSMapper ( )
protected
~svkPhilipsSMapper ( )
protected

Member Function Documentation

string GetDcmDate ( )
protected
string GetDcmPatientPositionString ( )
protected

Use the Procpar patient position string to set the DCM_PatientPosition data element.

References svkPhilipsSMapper::sparMap.

Referenced by svkPhilipsSMapper::InitGeneralSeriesModule().

void GetDimPnts ( int *  numPixels)
protected
void GetFOV ( float *  fov)
protected
float GetHeaderValueAsFloat ( string  keyString)
protected
int GetHeaderValueAsInt ( string  keyString)
protected
void InitAcquisitionContextModule ( )
protectedvirtual
void InitGeneralEquipmentModule ( )
protected

DDF is historically the UCSF representation of a GE raw file so initialize to svkPhilipsSMapper::MFG_STRING.

References svkPhilipsSMapper::dcmHeader, and svkDcmHeader::SetValue().

Referenced by svkPhilipsSMapper::InitializeDcmHeader().

void InitGeneralSeriesModule ( )
protected
void InitGeneralStudyModule ( )
protected
void InitializeDcmHeader ( map< string, string >  sparMap,
svkDcmHeader header,
svkMRSIOD iod,
int  swapBytes 
)
virtual
void InitMRAveragesMacro ( )
protectedvirtual
void InitMREchoMacro ( )
protectedvirtual
void InitMRModifierMacro ( )
protectedvirtual
void InitMRReceiveCoilMacro ( )
protectedvirtual
void InitMRSpectroscopyDataModule ( )
protectedvirtual
void InitMRSpectroscopyFOVGeometryMacro ( )
protectedvirtual
void InitMRSpectroscopyModule ( )
protectedvirtual
void InitMRSpectroscopyPulseSequenceModule ( )
protectedvirtual
void InitMRTimingAndRelatedParametersMacro ( )
protectedvirtual
void InitMRTransmitCoilMacro ( )
protectedvirtual
void InitMultiFrameDimensionModule ( )
protectedvirtual
void InitMultiFrameFunctionalGroupsModule ( )
protectedvirtual
void InitPatientModule ( )
protected
void InitPerFrameFunctionalGroupMacros ( )
protectedvirtual

The SPAR toplc is the center of the first voxel. Best guess at field interpretation all dims in mm. Not positive about difference between two sets of fields, e.g. ap_off_center and si_ap_off_center, etc. ap_size : AP FOV lr_size : RL FOV cc_size : SI FOV ap_off_center : AP displacment from center (from origin) lr_off_center : LR displacement from center (from origin) cc_off_center : SI displacment from center (from origin) // these may be euler angles. ap_angulation : angulation of or about AP axis (tilt forward/backwards) lr_angulation : angluation of or aboutLR axis (tilt left right) cc_angulation : angulation of or aboutSI axis( volume_selection_method : 2 si_ap_off_center : 1.225752473 si_lr_off_center : 1.05771184 si_cc_off_center : -2.013401001e-008 si_ap_off_angulation : 0 si_lr_off_angulation : 0 si_cc_off_angulation : 0 phase_encoding_fov : slice_thickness : 10

References svkPhilipsSMapper::dataSliceOrder, svkPhilipsSMapper::dcmHeader, svkDcmHeader::GetDataDcos(), svkDcmHeader::GetDimensionIndexVector(), svkPhilipsSMapper::GetDimPnts(), svkPhilipsSMapper::GetFOV(), svkPhilipsSMapper::GetHeaderValueAsFloat(), svkDcmHeader::GetPixelSize(), svkDcmHeader::InitPerFrameFunctionalGroupSequence(), svkPhilipsSMapper::numFrames, svkDcmHeader::SetDimensionVectorValue(), svkDcmHeader::SetSliceOrder(), and svkDcmHeader::SLICE_INDEX.

Referenced by svkPhilipsSMapper::InitMultiFrameFunctionalGroupsModule().

void InitPixelMeasuresMacro ( )
protectedvirtual
void InitPlaneOrientationMacro ( )
protectedvirtual
void InitSharedFunctionalGroupMacros ( )
protectedvirtual
static svkPhilipsSMapper* New ( )
static
void ReadSDATFile ( string  sdatFileName,
svkImageData data 
)
virtual
void SetCellSpectrum ( vtkImageData *  data,
int  x,
int  y,
int  z,
int  timePt,
int  coilNum 
)
protectedvirtual
void VaxToFloat ( const void *  inbuf,
void *  outbuf,
const int *  count 
)
protected
vtkTypeMacro ( svkPhilipsSMapper  ,
vtkObject   
)

Member Data Documentation

svkDcmHeader::DcmDataOrderingDirection dataSliceOrder
protected
svkDcmHeader* dcmHeader
protected
svkMRSIOD* iod
protected
int numFrames
protected
int numSlices
protected
map<string, string > sparMap
protected
float* specData
protected
int swapBytes
protected

The documentation for this class was generated from the following files: