VTK
vtkExtractVOI.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExtractVOI.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
45 #ifndef vtkExtractVOI_h
46 #define vtkExtractVOI_h
47 
48 #include "vtkImagingCoreModule.h" // For export macro
49 #include "vtkImageAlgorithm.h"
50 
51 // Forward Declarations
53 
54 class VTKIMAGINGCORE_EXPORT vtkExtractVOI : public vtkImageAlgorithm
55 {
56 public:
58  void PrintSelf(ostream& os, vtkIndent indent) override;
59 
63  static vtkExtractVOI *New();
64 
66 
71  vtkSetVector6Macro(VOI,int);
72  vtkGetVectorMacro(VOI,int,6);
74 
76 
82  vtkSetVector3Macro(SampleRate, int);
83  vtkGetVectorMacro(SampleRate, int, 3);
85 
87 
95  vtkSetMacro(IncludeBoundary,vtkTypeBool);
96  vtkGetMacro(IncludeBoundary,vtkTypeBool);
97  vtkBooleanMacro(IncludeBoundary,vtkTypeBool);
99 
100 protected:
101  vtkExtractVOI();
102  ~vtkExtractVOI() override;
103 
106  vtkInformationVector*) override;
109  vtkInformationVector*) override;
110  int RequestData(vtkInformation* request,
111  vtkInformationVector** inputVector,
112  vtkInformationVector* outputVector) override;
113 
120  bool RequestDataImpl(vtkInformationVector **inputVector,
121  vtkInformationVector *outputVector);
122 
123  int VOI[6];
124  int SampleRate[3];
126 
128 private:
129  vtkExtractVOI(const vtkExtractVOI&) = delete;
130  void operator=(const vtkExtractVOI&) = delete;
131 };
132 
133 #endif
134 
135 
vtkImageAlgorithm::RequestData
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called in response to a REQUEST_DATA request from the executive.
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
vtkImageAlgorithm.h
vtkImageAlgorithm
Generic algorithm superclass for image algs.
Definition: vtkImageAlgorithm.h:40
vtkExtractStructuredGridHelper
helper for extracting/sub-sampling structured datasets.
Definition: vtkExtractStructuredGridHelper.h:51
vtkImageAlgorithm::RequestUpdateExtent
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Subclasses can reimplement this method to translate the update extent requests from each output port ...
vtkImageAlgorithm::RequestInformation
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Subclasses can reimplement this method to collect information from their inputs and set information f...
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkExtractVOI::IncludeBoundary
vtkTypeBool IncludeBoundary
Definition: vtkExtractVOI.h:125
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkImageAlgorithm::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkAlgorithm::New
static vtkAlgorithm * New()
vtkExtractVOI::Internal
vtkExtractStructuredGridHelper * Internal
Definition: vtkExtractVOI.h:127
vtkExtractVOI
select piece (e.g., volume of interest) and/or subsample structured points dataset
Definition: vtkExtractVOI.h:54
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:69