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
00056 #ifndef __vtkImageEstimatePhaseLinearRamps_h
00057 #define __vtkImageEstimatePhaseLinearRamps_h
00058
00059
00060 #include "vtkThreadedImageAlgorithm.h"
00061 #include "vtkCNMRRImagingWin32Header.h"
00062
00063 class VTK_CNMRR_IMAGING_EXPORT vtkImageEstimatePhaseLinearRamps : public vtkThreadedImageAlgorithm
00064 {
00065 public:
00066 static vtkImageEstimatePhaseLinearRamps *New();
00067 vtkTypeRevisionMacro(vtkImageEstimatePhaseLinearRamps,vtkThreadedImageAlgorithm);
00068 void PrintSelf(ostream& os, vtkIndent indent);
00069
00071 void SetPhaseInput(vtkDataObject *in){ this->SetInput(0,in); }
00072
00074 void SetMaskInput(vtkDataObject *in){ this->SetInput(1,in); }
00075
00077
00081 vtkSetMacro(NumberOfSlicesPerVolume,int);
00082 vtkGetMacro(NumberOfSlicesPerVolume,int);
00084
00086
00088 vtkSetMacro(Estimate4D,int);
00089 vtkGetMacro(Estimate4D,int);
00090 vtkBooleanMacro(Estimate4D, int);
00092
00094
00095 vtkSetMacro(DiagnosticMessages,int);
00096 vtkGetMacro(DiagnosticMessages,int);
00097 vtkBooleanMacro(DiagnosticMessages, int);
00099
00101
00103 virtual int SplitExtent(int splitExt[6], int startExt[6],
00104 int num, int total);
00106
00107 protected:
00108 vtkImageEstimatePhaseLinearRamps();
00109 ~vtkImageEstimatePhaseLinearRamps(){};
00110
00111 int NumberOfSlicesPerVolume;
00112 int Estimate4D;
00113 int DiagnosticMessages;
00114
00115 virtual int RequestUpdateExtent(vtkInformation*,
00116 vtkInformationVector**,
00117 vtkInformationVector*);
00118 virtual int RequestInformation (vtkInformation*,
00119 vtkInformationVector**,
00120 vtkInformationVector*);
00121 virtual void ThreadedRequestData(vtkInformation *request,
00122 vtkInformationVector **inputVector,
00123 vtkInformationVector *outputVector,
00124 vtkImageData ***inData,
00125 vtkImageData **outData,
00126 int extent[6], int threadId);
00127 virtual int FillInputPortInformation(int port, vtkInformation* info);
00128
00129 private:
00130 vtkImageEstimatePhaseLinearRamps(const vtkImageEstimatePhaseLinearRamps&);
00131 void operator=(const vtkImageEstimatePhaseLinearRamps&);
00132 };
00133
00134 #endif