VTK  9.4.20241221
vtkToImplicitArrayFilter.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
3// Funded by CEA, DAM, DIF, F-91297 Arpajon, France
4#ifndef vtkToImplicitArrayFilter_h
5#define vtkToImplicitArrayFilter_h
6
7#include "vtkFiltersReductionModule.h" // for module export
9
10#include <memory>
11
12VTK_ABI_NAMESPACE_BEGIN
13
42class VTKFILTERSREDUCTION_EXPORT vtkToImplicitArrayFilter : public vtkPassInputTypeAlgorithm
43{
44public:
47 void PrintSelf(std::ostream& os, vtkIndent indent) override;
48
50
56 vtkGetMacro(UseMaxNumberOfDegreesOfFreedom, bool);
57 vtkSetMacro(UseMaxNumberOfDegreesOfFreedom, bool);
58 vtkBooleanMacro(UseMaxNumberOfDegreesOfFreedom, bool);
60
62
70 vtkGetMacro(MaxNumberOfDegreesOfFreedom, std::size_t);
71 vtkSetMacro(MaxNumberOfDegreesOfFreedom, std::size_t);
73
75
80 vtkGetMacro(TargetReduction, double);
81 vtkSetMacro(TargetReduction, double);
83
85
91
93
105
106protected:
109
111
112 bool UseMaxNumberOfDegreesOfFreedom = false;
113 std::size_t MaxNumberOfDegreesOfFreedom = 100;
114
115 double TargetReduction = 0.1;
116
117private:
119 void operator=(const vtkToImplicitArrayFilter&) = delete;
120
121 struct vtkInternals;
122 std::unique_ptr<vtkInternals> Internals;
123};
124VTK_ABI_NAMESPACE_END
125
126#endif // vtkToImplicitArrayFilter_h
Store on/off settings for data arrays, etc.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce output of the same type as input.
A VTK filter for compressing explicit memory arrays into implicit arrays.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
vtkDataArraySelection * GetPointsThenCellsDataArraySelection()
Methods for managing array selections.
const vtkToImplicitStrategy * GetStrategy() const
Setter/Getter for strategy.
void SetStrategy(vtkToImplicitStrategy *)
Setter/Getter for strategy.
~vtkToImplicitArrayFilter() override
void PrintSelf(std::ostream &os, vtkIndent indent) override
vtkDataArraySelection * GetEdgeDataArraySelection()
Methods for managing array selections.
static vtkToImplicitArrayFilter * New()
vtkDataArraySelection * GetArraySelection(int association)
Methods for managing array selections.
vtkDataArraySelection * GetCellDataArraySelection()
Methods for managing array selections.
vtkDataArraySelection * GetRowDataArraySelection()
Methods for managing array selections.
vtkDataArraySelection * GetFieldDataArraySelection()
Methods for managing array selections.
vtkDataArraySelection * GetPointDataArraySelection()
Methods for managing array selections.
vtkDataArraySelection * GetVertexDataArraySelection()
Methods for managing array selections.
Pure interface for strategies to transform explicit arrays into implicit arrays.