VTK  9.5.20251127
vtkExtractBlock.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
24
25#ifndef vtkExtractBlock_h
26#define vtkExtractBlock_h
27
28#include "vtkFiltersExtractionModule.h" // For export macro
30
31VTK_ABI_NAMESPACE_BEGIN
36
37class VTKFILTERSEXTRACTION_EXPORT vtkExtractBlock : public vtkPassInputTypeAlgorithm
38{
39 class vtkSet;
40
41public:
43
48 void PrintSelf(ostream& os, vtkIndent indent) override;
50
52
60 void AddIndex(unsigned int index);
61 void RemoveIndex(unsigned int index);
64
66
72 vtkSetMacro(PruneOutput, vtkTypeBool);
73 vtkGetMacro(PruneOutput, vtkTypeBool);
74 vtkBooleanMacro(PruneOutput, vtkTypeBool);
76
78
88 vtkBooleanMacro(MaintainStructure, vtkTypeBool);
90
91protected:
93 ~vtkExtractBlock() override;
94
99
102 int FillInputPortInformation(int port, vtkInformation* info) override;
103
106 vtkDataObjectTree* input, vtkSet& activeIndices);
109 bool Prune(vtkDataObject* branch);
110
113
114private:
115 vtkExtractBlock(const vtkExtractBlock&) = delete;
116 void operator=(const vtkExtractBlock&) = delete;
117 vtkSet* Indices;
118};
119
120VTK_ABI_NAMESPACE_END
121#endif
superclass for composite data iterators
provides implementation for most abstract methods in the superclass vtkCompositeDataSet
general representation of visualization data
void AddIndex(unsigned int index)
Select the block indices to extract.
bool Prune(vtkPartitionedDataSet *mpiece)
void RemoveAllIndices()
Standard methods for instantiation, type information, and printing.
void CopySubTree(vtkDataObjectTreeIterator *loc, vtkDataObjectTree *output, vtkDataObjectTree *input, vtkSet &activeIndices)
Extract subtree.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Implementation of the algorithm.
vtkTypeBool MaintainStructure
~vtkExtractBlock() override
static vtkInformationIntegerKey * DONT_PRUNE()
Internal key, used to avoid pruning of a branch.
vtkTypeBool PruneOutput
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instantiation, type information, and printing.
void RemoveIndex(unsigned int index)
Standard methods for instantiation, type information, and printing.
bool Prune(vtkDataObject *branch)
static vtkExtractBlock * New()
Standard methods for instantiation, type information, and printing.
bool Prune(vtkMultiBlockDataSet *mblock)
a simple class to control print indentation
Definition vtkIndent.h:108
Key for integer values in vtkInformation.
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Composite dataset that organizes datasets into blocks.
composite dataset to encapsulates a dataset consisting of partitions.
int vtkTypeBool
Definition vtkABI.h:64