VTK
dox/Imaging/Core/vtkRTAnalyticSource.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkRTAnalyticSource.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00029 #ifndef __vtkRTAnalyticSource_h
00030 #define __vtkRTAnalyticSource_h
00031 
00032 #include "vtkImagingCoreModule.h" // For export macro
00033 #include "vtkImageAlgorithm.h"
00034 
00035 class VTKIMAGINGCORE_EXPORT vtkRTAnalyticSource : public vtkImageAlgorithm
00036 {
00037 public:
00038   static vtkRTAnalyticSource *New();
00039   vtkTypeMacro(vtkRTAnalyticSource,vtkImageAlgorithm);
00040   void PrintSelf(ostream& os, vtkIndent indent);
00041 
00043 
00045   void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax,
00046                       int zMin, int zMax);
00047   vtkGetVector6Macro(WholeExtent, int);
00049 
00051 
00052   vtkSetVector3Macro(Center, double);
00053   vtkGetVector3Macro(Center, double);
00055 
00057 
00058   vtkSetMacro(Maximum, double);
00059   vtkGetMacro(Maximum, double);
00061 
00063 
00064   vtkSetMacro(StandardDeviation, double);
00065   vtkGetMacro(StandardDeviation, double);
00067 
00069 
00070   vtkSetMacro(XFreq, double);
00071   vtkGetMacro(XFreq, double);
00073 
00075 
00076   vtkSetMacro(YFreq, double);
00077   vtkGetMacro(YFreq, double);
00079 
00081 
00082   vtkSetMacro(ZFreq, double);
00083   vtkGetMacro(ZFreq, double);
00085 
00087 
00088   vtkSetMacro(XMag, double);
00089   vtkGetMacro(XMag, double);
00091 
00093 
00094   vtkSetMacro(YMag, double);
00095   vtkGetMacro(YMag, double);
00097 
00099 
00100   vtkSetMacro(ZMag, double);
00101   vtkGetMacro(ZMag, double);
00103 
00105 
00106   vtkSetMacro(SubsampleRate, int);
00107   vtkGetMacro(SubsampleRate, int);
00109 
00110 protected:
00115   vtkRTAnalyticSource();
00116 
00118 
00119   ~vtkRTAnalyticSource()
00120     {
00121     }
00123 
00124   double XFreq;
00125   double YFreq;
00126   double ZFreq;
00127   double XMag;
00128   double YMag;
00129   double ZMag;
00130   double StandardDeviation;
00131   int WholeExtent[6];
00132   double Center[3];
00133   double Maximum;
00134   int SubsampleRate;
00135 
00136   virtual int RequestInformation(vtkInformation *request,
00137                                  vtkInformationVector **inputVector,
00138                                  vtkInformationVector *outputVector);
00139   virtual void ExecuteDataWithInformation(vtkDataObject *data, vtkInformation *outInfo);
00140 private:
00141   vtkRTAnalyticSource(const vtkRTAnalyticSource&);  // Not implemented.
00142   void operator=(const vtkRTAnalyticSource&);  // Not implemented.
00143 };
00144 
00145 
00146 #endif