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
00051 #ifndef __vtkImageAdjustPhaseLinearRamps_h
00052 #define __vtkImageAdjustPhaseLinearRamps_h
00053
00054
00055 #include "vtkThreadedImageAlgorithm.h"
00056 #include "vtkCNMRRImagingWin32Header.h"
00057
00058 class VTK_CNMRR_IMAGING_EXPORT vtkImageAdjustPhaseLinearRamps : public vtkThreadedImageAlgorithm
00059 {
00060 public:
00061 static vtkImageAdjustPhaseLinearRamps *New();
00062 vtkTypeRevisionMacro(vtkImageAdjustPhaseLinearRamps,vtkThreadedImageAlgorithm);
00063 void PrintSelf(ostream& os, vtkIndent indent);
00064
00066 void SetPhaseInput(vtkDataObject *in){ this->SetInput(0,in); }
00067
00070 void SetLinearPhaseEstimatesInput(vtkDataObject *in){ this->SetInput(1,in); }
00071
00073 void SetMaskInput(vtkDataObject *in){ this->SetInput(2,in); }
00074
00076
00078 vtkSetMacro(RestoreLinearRamps,int);
00079 vtkGetMacro(RestoreLinearRamps,int);
00080 vtkBooleanMacro(RestoreLinearRamps, int);
00082
00084
00088 vtkSetMacro(NumberOfSlicesPerVolume,int);
00089 vtkGetMacro(NumberOfSlicesPerVolume,int);
00091
00093
00094 vtkSetMacro(DiagnosticMessages,int);
00095 vtkGetMacro(DiagnosticMessages,int);
00096 vtkBooleanMacro(DiagnosticMessages, int);
00098
00100
00102 virtual int SplitExtent(int splitExt[6], int startExt[6],
00103 int num, int total);
00105
00106 protected:
00107 vtkImageAdjustPhaseLinearRamps();
00108 ~vtkImageAdjustPhaseLinearRamps(){};
00109
00110 int RestoreLinearRamps;
00111 int NumberOfSlicesPerVolume;
00112 int DiagnosticMessages;
00113
00114 virtual int RequestUpdateExtent(vtkInformation*,
00115 vtkInformationVector**,
00116 vtkInformationVector*);
00117 virtual int RequestInformation (vtkInformation*,
00118 vtkInformationVector**,
00119 vtkInformationVector*);
00120 virtual void ThreadedRequestData(vtkInformation *request,
00121 vtkInformationVector **inputVector,
00122 vtkInformationVector *outputVector,
00123 vtkImageData ***inData,
00124 vtkImageData **outData,
00125 int extent[6], int threadId);
00126 virtual int FillInputPortInformation(int port, vtkInformation* info);
00127
00128 private:
00129 vtkImageAdjustPhaseLinearRamps(const vtkImageAdjustPhaseLinearRamps&);
00130 void operator=(const vtkImageAdjustPhaseLinearRamps&);
00131 };
00132
00133 #endif