VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkStructuredGridLIC2D.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 =========================================================================*/ 00044 #ifndef __vtkStructuredGridLIC2D_h 00045 #define __vtkStructuredGridLIC2D_h 00046 00047 #include "vtkRenderingLICModule.h" // For export macro 00048 #include "vtkStructuredGridAlgorithm.h" 00049 #include "vtkWeakPointer.h" // needed for vtkWeakPointer. 00050 00051 class vtkRenderWindow; 00052 class vtkImageNoiseSource; 00053 00054 class VTKRENDERINGLIC_EXPORT vtkStructuredGridLIC2D 00055 : public vtkStructuredGridAlgorithm 00056 { 00057 public: 00058 static vtkStructuredGridLIC2D* New(); 00059 vtkTypeMacro(vtkStructuredGridLIC2D, vtkStructuredGridAlgorithm); 00060 void PrintSelf(ostream& os, vtkIndent indent); 00061 00063 00068 int SetContext( vtkRenderWindow * context ); 00069 vtkRenderWindow * GetContext(); 00071 00073 00075 vtkSetMacro(Steps,int); 00076 vtkGetMacro(Steps,int); 00078 00080 00087 vtkSetMacro(StepSize,double); 00088 vtkGetMacro(StepSize,double); 00090 00092 00093 vtkSetClampMacro(Magnification, int, 1, VTK_INT_MAX); 00094 vtkGetMacro(Magnification, int); 00096 00098 00099 vtkGetMacro( OpenGLExtensionsSupported, int ); 00101 00103 int GetFBOSuccess() { return this->FBOSuccess; } 00104 00106 int GetLICSuccess() { return this->LICSuccess; } 00107 00108 //BTX 00109 protected: 00110 vtkStructuredGridLIC2D(); 00111 ~vtkStructuredGridLIC2D(); 00112 00114 00118 virtual int FillInputPortInformation(int port, 00119 vtkInformation *info); 00121 00123 00127 virtual int FillOutputPortInformation(int port, 00128 vtkInformation *info); 00130 00131 virtual int RequestInformation(vtkInformation *request, 00132 vtkInformationVector **inputVector, 00133 vtkInformationVector *outputVector); 00134 00135 int RequestUpdateExtent (vtkInformation *request, 00136 vtkInformationVector **inputVector, 00137 vtkInformationVector *outputVector); 00138 00140 00142 void AllocateOutputData(vtkDataObject *output, 00143 vtkInformation *outInfo); 00145 00147 void AllocateScalars(vtkStructuredGrid *sg, vtkInformation *outInfo); 00148 00150 00152 virtual int RequestData(vtkInformation *request, 00153 vtkInformationVector **inputVector, 00154 vtkInformationVector *outputVector); 00156 00157 int Steps; 00158 double StepSize; 00159 int Magnification; 00160 int OpenGLExtensionsSupported; 00161 vtkWeakPointer<vtkRenderWindow> Context; 00162 00163 vtkImageNoiseSource* NoiseSource; 00164 bool OwnWindow; 00165 int FBOSuccess; 00166 int LICSuccess; 00167 00168 private: 00169 vtkStructuredGridLIC2D(const vtkStructuredGridLIC2D&); // Not implemented. 00170 void operator=(const vtkStructuredGridLIC2D&); // Not implemented. 00171 //ETX 00172 }; 00173 00174 #endif