VTK
vtkExtractBlock.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExtractBlock.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 =========================================================================*/
27 #ifndef vtkExtractBlock_h
28 #define vtkExtractBlock_h
29 
30 #include "vtkFiltersExtractionModule.h" // For export macro
32 
35 
36 class VTKFILTERSEXTRACTION_EXPORT vtkExtractBlock : public vtkMultiBlockDataSetAlgorithm
37 {
38 public:
39  static vtkExtractBlock* New();
41  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
42 
44 
52  void AddIndex(unsigned int index);
53  void RemoveIndex(unsigned int index);
54  void RemoveAllIndices();
56 
58 
62  vtkSetMacro(PruneOutput, int);
63  vtkGetMacro(PruneOutput, int);
64  vtkBooleanMacro(PruneOutput, int);
66 
68 
74  vtkSetMacro(MaintainStructure, int);
75  vtkGetMacro(MaintainStructure, int);
76  vtkBooleanMacro(MaintainStructure, int);
78 
79 protected:
81  ~vtkExtractBlock() VTK_OVERRIDE;
82 
86  static vtkInformationIntegerKey* DONT_PRUNE();
87 
89  int RequestData(vtkInformation *,
91  vtkInformationVector *) VTK_OVERRIDE;
92 
93 
95  void CopySubTree(vtkDataObjectTreeIterator* loc,
97  bool Prune(vtkMultiBlockDataSet* mblock);
98  bool Prune(vtkMultiPieceDataSet* mblock);
99  bool Prune(vtkDataObject* mblock);
100 
101  int PruneOutput;
102  int MaintainStructure;
103 private:
104  vtkExtractBlock(const vtkExtractBlock&) VTK_DELETE_FUNCTION;
105  void operator=(const vtkExtractBlock&) VTK_DELETE_FUNCTION;
106 
107  class vtkSet;
108  vtkSet *Indices;
109  vtkSet *ActiveIndices;
110 
111 };
112 
113 #endif
114 
115 
Store vtkAlgorithm input/output information.
extracts blocks from a multiblock dataset.
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
static vtkMultiBlockDataSetAlgorithm * New()
a simple class to control print indentation
Definition: vtkIndent.h:33
Key for integer values in vtkInformation.
composite dataset to encapsulates pieces of dataset.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Composite dataset that organizes datasets into blocks.
Store zero or more vtkInformation instances.
superclass for composite data iterators
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
general representation of visualization data
Definition: vtkDataObject.h:58