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 | List of all members
svkGEPFileMapperUCSFfidcsiDev0 Class Reference

#include <svkGEPFileMapperUCSFfidcsiDev0.h>

Inheritance diagram for svkGEPFileMapperUCSFfidcsiDev0:
svkGEPFileMapperUCSF svkGEPFileMapper

Public Member Functions

 vtkTypeMacro (svkGEPFileMapperUCSFfidcsiDev0, svkGEPFileMapperUCSF)
 
virtual void ReadData (vtkStringArray *pFileNames, svkImageData *data)
 
- Public Member Functions inherited from svkGEPFileMapperUCSF
 vtkTypeMacro (svkGEPFileMapperUCSF, svkGEPFileMapper)
 
- Public Member Functions inherited from svkGEPFileMapper
 vtkTypeMacro (svkGEPFileMapper, vtkObject)
 
virtual void InitializeDcmHeader (map< string, vector< string > > pfMap, svkDcmHeader *header, float pfileVersion, int swapBytes, map< string, void * > inputArgs)
 
string GetProgressText ()
 
void SetProgressText (string progressText)
 
void SetPfileName (string pfileName)
 

Static Public Member Functions

static
svkGEPFileMapperUCSFfidcsiDev0
New ()
 
static void RedimensionData (svkImageData *data, int *numVoxelsOriginal, int *numVoxelsReordered, int numFreqPts)
 
- Static Public Member Functions inherited from svkGEPFileMapperUCSF
static svkGEPFileMapperUCSFNew ()
 
- Static Public Member Functions inherited from svkGEPFileMapper
static svkGEPFileMapperNew ()
 
static string ConvertGEDateToDICOM (string geDate)
 

Protected Member Functions

 svkGEPFileMapperUCSFfidcsiDev0 ()
 
 ~svkGEPFileMapperUCSFfidcsiDev0 ()
 
virtual vtkstd::string GetVolumeLocalizationTechnique ()
 
virtual void GetSelBoxCenter (float selBoxCenter[3])
 
virtual void GetSelBoxSize (float selBoxSize[3])
 
virtual void GetCenterFromRawFile (double *center)
 
virtual bool IsChopOn ()
 
void ModifyForPatientEntry (svkImageData *data)
 
void InitMRSpectroscopyModule ()
 
float GetPPMRef ()
 
- Protected Member Functions inherited from svkGEPFileMapperUCSF
 svkGEPFileMapperUCSF ()
 
 ~svkGEPFileMapperUCSF ()
 
virtual int GetNumKSpacePoints ()
 
virtual bool WasIndexSampled (int xIndex, int yIndex, int zIndex)
 
virtual void InitSatBandsFromXML ()
 
- Protected Member Functions inherited from svkGEPFileMapper
 svkGEPFileMapper ()
 
 ~svkGEPFileMapper ()
 
void InitPatientModule ()
 
void InitGeneralStudyModule ()
 
void InitGeneralSeriesModule ()
 
void InitFrameOfReferenceModule ()
 
void InitGeneralEquipmentModule ()
 
void InitEnhancedGeneralEquipmentModule ()
 
virtual void InitMultiFrameFunctionalGroupsModule ()
 
virtual void InitAcquisitionContextModule ()
 
virtual void InitMRSpectroscopyPulseSequenceModule ()
 
virtual void InitSharedFunctionalGroupMacros ()
 
virtual void InitPerFrameFunctionalGroupMacros ()
 
virtual void InitPixelMeasuresMacro ()
 
virtual void InitPlaneOrientationMacro ()
 
virtual void InitMRSpectroscopyFrameTypeMacro ()
 
virtual void InitMRTimingAndRelatedParametersMacro ()
 
virtual void InitMRSpectroscopyFOVGeometryMacro ()
 
virtual void InitMREchoMacro ()
 
virtual void InitMRModifierMacro ()
 
virtual void InitMRReceiveCoilMacro ()
 
virtual void InitMRTransmitCoilMacro ()
 
virtual void InitMRAveragesMacro ()
 
virtual void InitMRSpatialSaturationMacro ()
 
virtual void InitSatBand (float satRAS[3], float translation)
 
virtual void InitVolumeLocalizationSeq ()
 
virtual void InitMRSpectroscopyDataModule ()
 
virtual void InitK0Sampled (svkDcmHeader *hdr)
 
virtual float GetFrequencyOffset ()
 
int GetNumVoxelsInVol ()
 
virtual void GetNumVoxels (int numVoxels[3])
 
virtual void GetVoxelSpacing (double voxelSpacing[3])
 
void GetFOV (float fov[3])
 
int GetNumCoils ()
 
int GetNumFrames ()
 
virtual int GetNumTimePoints ()
 
virtual int GetNumDummyScans ()
 
virtual int GetNumEPSIAcquisitions ()
 
bool AddDummy (int offset, int coilNum, int timePt)
 
void GetDcos (double dcos[3][3])
 
bool IsSwapOn ()
 
bool Is2D ()
 
virtual void GetXYZIndices (int dataIndex, int *x, int *y, int *z)
 
void UpdateProgress (double amount)
 
virtual void ModifyBehavior (svkImageData *data)
 
void RedimensionModifiedSVData (svkImageData *data)
 
virtual int GetNumberUnsuppressedAcquisitions ()
 
virtual int GetNumberSuppressedAcquisitions ()
 
virtual void GetSelBoxCenter (double selBoxCenter[3])
 
virtual void GetSelBoxSize (double selBoxSize[3])
 
void SetCellSpectrum (vtkImageData *data, bool wasSampled, int offset, int index, int x, int y, int z, int timePoint=0, int channel=0)
 
virtual void InitSpecTuple (int numFreqPts, int freqPt, float *tuple, vtkDataArray *dataArray)
 
int GetHeaderValueAsInt (string key)
 
long long int GetHeaderValueAsLongInt (string key)
 
float GetHeaderValueAsFloat (string key)
 
string GetHeaderValueAsString (string key)
 
bool isInputArgSet (string argName)
 
bool GetInputArgStringValue (string argName, string *argValue)
 
bool GetInputArgBoolValue (string argName, bool *argValue)
 
virtual void ReorderEPSI (svkMrsImageData *data)
 
string GetNucleus ()
 
void ModifyForPatientEntry (double dcos[3][3])
 

Additional Inherited Members

- Public Types inherited from svkGEPFileMapper
enum  MapperBehavior {
  UNDEFINED = 0, LOAD_RAW, LOAD_RAW_UNSUPPRESSED, LOAD_RAW_SUPPRESSED,
  LOAD_AVG_UNSUPPRESSED, LOAD_AVG_SUPPRESSED, LOAD_EPSI
}
 
- Protected Attributes inherited from svkGEPFileMapper
string progressText
 
map< string, vector< string > > pfMap
 
svkDcmHeaderdcmHeader
 
float pfileVersion
 
int * specData
 
svkDcmHeader::DcmDataOrderingDirection dataSliceOrder
 
int chopVal
 
map< string, void * > inputArgs
 
int swapBytes
 
svkMRSIODiod
 
double progress
 
string pfileName
 

Detailed Description

Mapper from a GE P-file header to a DICOM MRS SOP Class. This concrete svkGEPFileMapper overrides the default product sequence logic with specifics required for reading symmetric EPSI data acquired with the fidcsi_ucsf_dev0 research PSD developed by Peder Larson, PhD, UCSF Department of Radiology and Biomedical Imaging. This mapper outputs a regular cartesian grid of k-space data suitable for Fourier transform reconstruction.

Non-uniformly sampled Symmetric EPSI ramp data is sampled onto a cartesian grid using a "Gridding" algorithm based on a Kaiser-Bessel convolving function as described in references 1 and 2.

Portions of this implementation are based on a MATLAB implementation of the regridding algorithm developed by Brian Hargreaves, Ph.D. (Stanford University) that is available at the following URL:

The following people contributed to the development, implementation and validation of this class:

Peder E.Z. Larson, PhD (UCSF Department of Radiology and Biomedical Imaging)
Jason C. Crane, PhD (UCSF Department of Radiology and Biomedical Imaging) 
Sarah J. Nelson, PhD (UCSF Department of Radiology and Biomedical Imaging)
Daniel Vigneron, PhD (UCSF Department of Radiology and Biomedical Imaging)
Mathew L. Zierhut, PhD (UCSF Department of Radiology and Biomedical Imaging)

References:

  1. John I. Jackson, Craig H. Meyer, Dwight G. Nishimura and Albert Macovski Selection of a Convolution Function for Fourier Inversion Using Gridding IEEE TRANSACTIONS ON MEDICAL IMAGING. VOL. 10. NO. 3 , SEPTEMBER 1991
  2. Philip J. Beatty, Dwight G. Nishimura, John M. Pauly, Rapid Gridding Reconstruction With a Minimal Oversampling Ratio IEEE TRANSACTIONS ON MEDICAL IMAGING, VOL. 24, NO. 6, JUNE 2005

Constructor & Destructor Documentation

Member Function Documentation

void GetCenterFromRawFile ( double *  center)
protectedvirtual

Gets the center of the acquisition grid. May vary between sequences.

Reimplemented from svkGEPFileMapper.

References svkGEPFileMapper::GetHeaderValueAsFloat().

float GetPPMRef ( )
protectedvirtual

Gets the chemical shift reference taking into account acquisition frequency offset and the acquisition sample temperature.

Reimplemented from svkGEPFileMapper.

void GetSelBoxCenter ( float  selBoxCenter[3])
protectedvirtual
void GetSelBoxSize ( float  selBoxSize[3])
protectedvirtual

For FIDCSI make the press box occupy the whole volume. There isnt't full 3D PRESS, just a single slab of selection (1D selective).

References svkGEPFileMapper::GetHeaderValueAsFloat().

string GetVolumeLocalizationTechnique ( )
protectedvirtual

Reimplemented from svkGEPFileMapper.

void InitMRSpectroscopyModule ( )
protectedvirtual
bool IsChopOn ( )
protectedvirtual

Chop is off for UCSF fid dev0 (EPSI)

Reimplemented from svkGEPFileMapper.

void ModifyForPatientEntry ( svkImageData data)
protected
static svkGEPFileMapperUCSFfidcsiDev0* New ( )
static
void ReadData ( vtkStringArray *  pFileNames,
svkImageData data 
)
virtual
static void RedimensionData ( svkImageData data,
int *  numVoxelsOriginal,
int *  numVoxelsReordered,
int  numFreqPts 
)
static

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