VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/Filters/Extraction/vtkExtractGrid.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkExtractGrid.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 =========================================================================*/
00045 #ifndef vtkExtractGrid_h
00046 #define vtkExtractGrid_h
00047 
00048 #include "vtkFiltersExtractionModule.h" // For export macro
00049 #include "vtkStructuredGridAlgorithm.h"
00050 
00051 // Forward Declarations
00052 class vtkExtractStructuredGridHelper;
00053 
00054 class VTKFILTERSEXTRACTION_EXPORT vtkExtractGrid : public vtkStructuredGridAlgorithm
00055 {
00056 public:
00057   static vtkExtractGrid *New();
00058   vtkTypeMacro(vtkExtractGrid,vtkStructuredGridAlgorithm);
00059   void PrintSelf(ostream& os, vtkIndent indent);
00060 
00062 
00065   vtkSetVector6Macro(VOI,int);
00066   vtkGetVectorMacro(VOI,int,6);
00068 
00070 
00075   vtkSetVector3Macro(SampleRate, int);
00076   vtkGetVectorMacro(SampleRate, int, 3);
00078 
00080 
00086   vtkSetMacro(IncludeBoundary,int);
00087   vtkGetMacro(IncludeBoundary,int);
00088   vtkBooleanMacro(IncludeBoundary,int);
00090 
00091 protected:
00092   vtkExtractGrid();
00093   ~vtkExtractGrid();
00094 
00095   virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00096   virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00097   virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00098 
00100 
00103   bool RequestDataImpl(int voi[6],
00104                        vtkInformationVector **inputVector,
00105                        vtkInformationVector *outputVector);
00107 
00108 
00109   int VOI[6];
00110   int SampleRate[3];
00111   int IncludeBoundary;
00112 
00113   vtkExtractStructuredGridHelper* Internal;
00114 
00115 private:
00116   vtkExtractGrid(const vtkExtractGrid&);  // Not implemented.
00117   void operator=(const vtkExtractGrid&);  // Not implemented.
00118 };
00119 
00120 #endif
00121 
00122