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

#include <svkMRSAutoPhase.h>

Inheritance diagram for svkMRSAutoPhase:
svkThreadedImageAlgorithm svkMRSFirstPointPhase svkMRSZeroOrderPhase svkMRSFirstOrderPhase

Public Types

enum  PhasingModel {
  UNDEFINED_PHASE_MODEL = 0, FIRST_POINT_0 = 1, MAX_PEAK_HTS_0 = 2, MAX_PEAK_HT_ONE_PEAK_0 = 3,
  LAST_MODEL
}
 

Public Member Functions

 vtkTypeMacro (svkMRSAutoPhase, svkThreadedImageAlgorithm)
 
void OnlyUseSelectionBox ()
 
virtual svkImageDataGetOutput (int port)
 
- Public Member Functions inherited from svkThreadedImageAlgorithm
 vtkTypeMacro (svkThreadedImageAlgorithm, vtkThreadedImageAlgorithm)
 
svkImageDataGetOutput ()
 
svkImageDataGetImageDataInput (int port)
 

Protected Member Functions

 svkMRSAutoPhase ()
 
 ~svkMRSAutoPhase ()
 
virtual int RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
int SVKRequestDataPreExec (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
int SVKRequestDataPostExec (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual void ThreadedRequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector, vtkImageData ***inData, vtkImageData **outData, int extent[6], int threadId)
 
virtual void ValidateInput ()
 
virtual int FillInputPortInformation (int vtkNotUsed(port), vtkInformation *info)
 
virtual int FillOutputPortInformation (int vtkNotUsed(port), vtkInformation *info)
 
void ZeroData ()
 
virtual void UpdateProvenance ()
 
void AutoPhaseExecute (int *outExt, int id)
 
virtual void AutoPhaseSpectrum (int cellID)
 
virtual void FitPhase (int cellID)=0
 
virtual void PrePhaseSetup ()=0
 
virtual void PostPhaseCleanup ()=0
 
void SyncPointsFromCells ()
 
virtual void SetMapSeriesDescription ()
 
virtual void InitOptimizer (int cellID, itk::ParticleSwarmOptimizer::Pointer itkOptimizer)=0
 
- Protected Member Functions inherited from svkThreadedImageAlgorithm
 svkThreadedImageAlgorithm ()
 
 ~svkThreadedImageAlgorithm ()
 
int SplitExtent (int splitExt[6], int startExt[6], int num, int total)
 

Protected Attributes

int numTimePoints
 
svkMRSAutoPhase::PhasingModel phaseModelType
 
bool onlyUseSelectionBox
 
short * selectionBoxMask
 
bool isSpectralFFTRequired
 
string seriesDescription
 
vtkDataArray * mapArrayZeroOrderPhase
 

Static Protected Attributes

static int * progress
 

Detailed Description

Algorithm for automatic phase correction of MR spectra.

Member Enumeration Documentation

Enumerator
UNDEFINED_PHASE_MODEL 
FIRST_POINT_0 
MAX_PEAK_HTS_0 
MAX_PEAK_HT_ONE_PEAK_0 
LAST_MODEL 

Constructor & Destructor Documentation

svkMRSAutoPhase ( )
protected
~svkMRSAutoPhase ( )
protected

Member Function Documentation

void AutoPhaseExecute ( int *  ext,
int  id 
)
protected
void AutoPhaseSpectrum ( int  cellID)
protectedvirtual
int FillInputPortInformation ( int   vtkNotUsedport,
vtkInformation *  info 
)
protectedvirtual

input port 0 is required. .

Reimplemented from svkThreadedImageAlgorithm.

int FillOutputPortInformation ( int   vtkNotUsedport,
vtkInformation *  info 
)
protectedvirtual

Output from this algo is 1: image of applied phases The phased MRS data is in place applied to the input object.

Reimplemented from svkThreadedImageAlgorithm.

virtual void FitPhase ( int  cellID)
protectedpure virtual
svkImageData * GetOutput ( int  port)
virtual

Wire input to output for in place filters

Reimplemented from svkThreadedImageAlgorithm.

virtual void InitOptimizer ( int  cellID,
itk::ParticleSwarmOptimizer::Pointer  itkOptimizer 
)
protectedpure virtual
void OnlyUseSelectionBox ( )

Only fit phase inside selection box

References svkMRSAutoPhase::onlyUseSelectionBox.

virtual void PostPhaseCleanup ( )
protectedpure virtual
virtual void PrePhaseSetup ( )
protectedpure virtual
int RequestData ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protectedvirtual
int RequestInformation ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protectedvirtual

Resets the origin and extent for correct initialization of output svkMriImageData object from input svkMrsImageData object.

References svkImageData::GetDcmHeader(), svkThreadedImageAlgorithm::GetImageDataInput(), and svkDcmHeader::GetOrigin().

void SetMapSeriesDescription ( )
protectedvirtual
int SVKRequestDataPostExec ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protected
int SVKRequestDataPreExec ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protected
void SyncPointsFromCells ( )
protected

Sync Point Data from Cell Data

References svkImageData::GetNumberOfVoxels(), and svkThreadedImageAlgorithm::GetOutput().

void ThreadedRequestData ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector,
vtkImageData ***  inData,
vtkImageData **  outData,
int  extent[6],
int  threadId 
)
protectedvirtual

This method is passed an input and output Data, and executes the filter algorithm to fill the output from the inputs. id = id of thread

References svkMRSAutoPhase::AutoPhaseExecute().

void UpdateProvenance ( )
protectedvirtual
void ValidateInput ( )
protectedvirtual
vtkTypeMacro ( svkMRSAutoPhase  ,
svkThreadedImageAlgorithm   
)
void ZeroData ( )
protected

Zero output phase image map

References svkImageData::GetNumberOfVoxels(), and svkThreadedImageAlgorithm::GetOutput().

Member Data Documentation

bool isSpectralFFTRequired
protected
vtkDataArray* mapArrayZeroOrderPhase
protected
int numTimePoints
protected
bool onlyUseSelectionBox
protected
svkMRSAutoPhase::PhasingModel phaseModelType
protected
int * progress
staticprotected
short* selectionBoxMask
protected
string seriesDescription
protected

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