dox/Imaging/vtkImagePhaseUnwrapEchoes.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   vtkCNMRRLibrary
00004   Module:    $RCSfile: vtkImagePhaseUnwrapEchoes.h,v $
00005 
00006   Copyright  2006  The Pennsylvania State University
00007   
00008           Notice
00009  
00010   The contents of this file are subject to The Pennsylvania State University 
00011   Open Source License (the "License"); you may not use this file except in 
00012   compliance with the License. You may obtain a copy of the License at H066 
00013   Radiology, NMR Building, 500 University Drive, Hershey, PA, 
00014   tel. (717) 531-6069 or via email at dcb210@psu.edu.
00015  
00016   Software distributed under the License is distributed on an "AS IS" basis, 
00017   WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 
00018   for the specific language governing rights and limitations under the 
00019   License.
00020  
00021   The Original Code is listed under Exhibit A of the license.
00022  
00023   The Initial Developer of the Original Code is Don Bigler.
00024  
00025   Contributor(s):
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&);  // Not implemented.
00145       void operator=(const vtkImagePhaseUnwrapEchoes&);  // Not implemented.
00146 };
00147 
00148 #endif

Generated on Tue May 12 14:53:03 2009 for vtkCNMRRLibrary by  doxygen 1.4.7