00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00041 #ifndef __vtkStructuredGridLIC2D_h
00042 #define __vtkStructuredGridLIC2D_h
00043
00044 #include "vtkStructuredGridAlgorithm.h"
00045 #include "vtkWeakPointer.h"
00046
00047 class vtkRenderWindow;
00048 class vtkImageNoiseSource;
00049
00050 class VTK_HYBRID_EXPORT vtkStructuredGridLIC2D : public vtkStructuredGridAlgorithm
00051 {
00052 public:
00053 static vtkStructuredGridLIC2D* New();
00054 vtkTypeMacro(vtkStructuredGridLIC2D, vtkStructuredGridAlgorithm);
00055 void PrintSelf(ostream& os, vtkIndent indent);
00056
00058
00063 int SetContext( vtkRenderWindow * context );
00064 vtkRenderWindow * GetContext();
00066
00068
00070 vtkSetMacro(Steps,int);
00071 vtkGetMacro(Steps,int);
00073
00075
00082 vtkSetMacro(StepSize,double);
00083 vtkGetMacro(StepSize,double);
00085
00087
00088 vtkSetClampMacro(Magnification, int, 1, VTK_INT_MAX);
00089 vtkGetMacro(Magnification, int);
00091
00093
00094 vtkGetMacro( OpenGLExtensionsSupported, int );
00096
00098 int GetFBOSuccess() { return this->FBOSuccess; }
00099
00101 int GetLICSuccess() { return this->LICSuccess; }
00102
00103
00104 protected:
00105 vtkStructuredGridLIC2D();
00106 ~vtkStructuredGridLIC2D();
00107
00109
00113 virtual int FillInputPortInformation(int port,
00114 vtkInformation *info);
00116
00118
00122 virtual int FillOutputPortInformation(int port,
00123 vtkInformation *info);
00125
00126 virtual int RequestInformation(vtkInformation *request,
00127 vtkInformationVector **inputVector,
00128 vtkInformationVector *outputVector);
00129
00130 int RequestUpdateExtent (vtkInformation *request,
00131 vtkInformationVector **inputVector,
00132 vtkInformationVector *outputVector);
00133
00135
00137 void AllocateOutputData(vtkDataObject *output,
00138 int outputPort);
00140
00142 void AllocateScalars(vtkStructuredGrid *sg);
00143
00145
00147 virtual int RequestData(vtkInformation *request,
00148 vtkInformationVector **inputVector,
00149 vtkInformationVector *outputVector);
00151
00152 int Steps;
00153 double StepSize;
00154 int Magnification;
00155 int OpenGLExtensionsSupported;
00156 vtkWeakPointer<vtkRenderWindow> Context;
00157
00158 vtkImageNoiseSource* NoiseSource;
00159 bool OwnWindow;
00160 int FBOSuccess;
00161 int LICSuccess;
00162
00163 private:
00164 vtkStructuredGridLIC2D(const vtkStructuredGridLIC2D&);
00165 void operator=(const vtkStructuredGridLIC2D&);
00166
00167 };
00168
00169 #endif