00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00041 #ifndef __vtkImagePhaseUnwrapEchoes_h
00042 #define __vtkImagePhaseUnwrapEchoes_h
00043
00044
00045 #include "vtkImageDecomposeFilter.h"
00046 #include "vtkCNMRRImagingWin32Header.h"
00047
00048 class VTK_CNMRR_IMAGING_EXPORT vtkImagePhaseUnwrapEchoes : public vtkImageDecomposeFilter
00049 {
00050 public:
00051 static vtkImagePhaseUnwrapEchoes *New();
00052 vtkTypeRevisionMacro(vtkImagePhaseUnwrapEchoes,vtkImageDecomposeFilter);
00053
00054
00056
00061 void SetDimensionality(int dim){};
00062 vtkGetMacro(Dimensionality,int);
00064
00066
00068 vtkSetMacro(InputImageSortedByEchoBlocks,int);
00069 vtkGetMacro(InputImageSortedByEchoBlocks,int);
00070 vtkBooleanMacro(InputImageSortedByEchoBlocks, int);
00072
00074
00075 vtkSetMacro(PhaseUnwrap360,int);
00076 vtkGetMacro(PhaseUnwrap360,int);
00077 vtkBooleanMacro(PhaseUnwrap360, int);
00079
00081
00082 vtkSetMacro(NumberOfEchoes,int);
00083 vtkGetMacro(NumberOfEchoes,int);
00085
00087
00089 vtkSetMacro(NumberOfSlices,int);
00090 vtkGetMacro(NumberOfSlices,int);
00092
00094
00096 vtkSetMacro(NumberOfSliceEncodingStepsPerSlice,int);
00097 vtkGetMacro(NumberOfSliceEncodingStepsPerSlice,int);
00099
00101
00103 vtkSetMacro(NumberOfImageRepetitions,int);
00104 vtkGetMacro(NumberOfImageRepetitions,int);
00106
00107
00109
00116 int SplitExtent(int splitExt[6], int startExt[6],
00117 int num, int total);
00119
00120
00121 protected:
00122 vtkImagePhaseUnwrapEchoes();
00123 ~vtkImagePhaseUnwrapEchoes() {};
00124
00125 int InputImageSortedByEchoBlocks;
00126
00127 int PhaseUnwrap360;
00128
00129 int NumberOfEchoes;
00130
00131 int NumberOfSlices;
00132
00133 int NumberOfSliceEncodingStepsPerSlice;
00134
00135 int NumberOfImageRepetitions;
00136
00137
00138 virtual int IterativeRequestUpdateExtent(vtkInformation* in,
00139 vtkInformation* out);
00140
00141 void ThreadedExecute(vtkImageData *inData, vtkImageData *outData,
00142 int outExt[6], int threadId);
00143 private:
00144 vtkImagePhaseUnwrapEchoes(const vtkImagePhaseUnwrapEchoes&);
00145 void operator=(const vtkImagePhaseUnwrapEchoes&);
00146 };
00147
00148 #endif