VTK  9.5.20251125
vtkIntegrationLinearStrategy.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
14
15#ifndef vtkIntegrationLinearStrategy_h
16#define vtkIntegrationLinearStrategy_h
17
18#include "vtkFiltersParallelModule.h" // For export macro
20
21VTK_ABI_NAMESPACE_BEGIN
22class vtkDataSet;
24class vtkGenericCell;
27
28class VTKFILTERSPARALLEL_EXPORT vtkIntegrationLinearStrategy : public vtkIntegrationStrategy
29{
30public:
32 void PrintSelf(ostream& os, vtkIndent indent) override;
34
36
40 vtkIdType numPts, const vtkIdType* cellPtIds, double& sum, double sumCenter[3],
42 int index) override;
43
45 vtkIdType numPts, const vtkIdType* cellPtIds, double& sum, double sumCenter[3],
47 int index) override;
48
50 vtkIdType numPts, const vtkIdType* cellPtIds, double& sum, double sumCenter[3],
52 int index) override;
53
55 vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id, double& sum, double sumCenter[3],
57 int index) override;
58
60 vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id, vtkIdType pt4Id, double& sum,
61 double sumCenter[3], vtkIntegrateAttributesFieldList& cellFieldList,
62 vtkIntegrateAttributesFieldList& pointFieldList, int index) override;
63
65 vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id, vtkIdType pt4Id, double& sum,
66 double sumCenter[3], vtkIntegrateAttributesFieldList& cellFieldList,
67 vtkIntegrateAttributesFieldList& pointFieldList, int index) override;
68
70 vtkIdType numPts, const vtkIdType* cellPtIds, double& sum, double sumCenter[3],
72 int index) override;
73
75 vtkIdType numPts, const vtkIdType* cellPtIds, double& sum, double sumCenter[3],
77 int index) override;
78
80 vtkIdType cellId, vtkIdType numPts, const vtkIdType* cellPtIds, vtkIdList* cellPtIdsList,
81 double& sum, double sumCenter[3], vtkIntegrateAttributesFieldList& cellFieldList,
82 vtkIntegrateAttributesFieldList& pointFieldList, int index) override;
83
85 vtkIdType cellId, vtkIdType numPts, const vtkIdType* cellPtIds, vtkIdList* cellPtIdsList,
86 double& sum, double sumCenter[3], vtkIntegrateAttributesFieldList& cellFieldList,
87 vtkIntegrateAttributesFieldList& pointFieldList, int index) override;
88
90 vtkIdType cellId, vtkIdType numPts, const vtkIdType* cellPtIds, vtkIdList* cellPtIdsList,
91 double& sum, double sumCenter[3], vtkIntegrateAttributesFieldList& cellFieldList,
92 vtkIntegrateAttributesFieldList& pointFieldList, int index) override;
93
95 vtkIdType numPts, const vtkIdType* cellPtIds, double& sum, double sumCenter[3],
97 int index) override;
98
100 vtkIdType numPts, const vtkIdType* cellPtIds, double& sum, double sumCenter[3],
102 int index) override;
103
105 vtkIdType numPts, const vtkIdType* cellPtIds, double& sum, double sumCenter[3],
107 int index) override;
108
110 vtkIdType cellId, vtkIdType numPts, vtkIdList* cellPtIds, double& sum, double sumCenter[3],
112 int index) override;
114
116
120 double volume, vtkIntegrateAttributesFieldList& fieldlist, int fieldlist_index) override;
121
123 vtkIdType pt2Id, double volume, vtkIntegrateAttributesFieldList& fieldlist,
124 int fieldlist_index) override;
125
127 vtkIdType pt2Id, vtkIdType pt3Id, double volume, vtkIntegrateAttributesFieldList& fieldlist,
128 int fieldlist_index) override;
129
131 vtkIdType pt2Id, vtkIdType pt3Id, vtkIdType pt4Id, double volume,
132 vtkIntegrateAttributesFieldList& fieldlist, int fieldlist_index) override;
134
135protected:
137 ~vtkIntegrationLinearStrategy() override = default;
138
139private:
141 void operator=(const vtkIntegrationLinearStrategy&) = delete;
142};
143
144VTK_ABI_NAMESPACE_END
145#endif
represent and manipulate attribute data in a dataset
abstract class to specify dataset behavior
Definition vtkDataSet.h:166
provides thread-safe access to cells
list of point or cell ids
Definition vtkIdList.h:133
a simple class to control print indentation
Definition vtkIndent.h:108
Helper class for vtkIntegrateAttributes.
void IntegrateGeneral1DCell(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateData3(vtkDataSetAttributes *inda, vtkDataSetAttributes *outda, vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id, double volume, vtkIntegrateAttributesFieldList &fieldlist, int fieldlist_index) override
Integrates on data arrays depending on the number of node of the shape.
static vtkIntegrationLinearStrategy * New()
void IntegrateHexahedron(vtkDataSet *input, vtkUnstructuredGrid *output, vtkGenericCell *cell, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, vtkIdList *cellPtIdsList, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void IntegrateQuad(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id, vtkIdType pt4Id, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegratePolyLine(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateGeneral2DCell(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateVoxel(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateDefault(vtkDataSet *input, vtkUnstructuredGrid *output, vtkGenericCell *cell, vtkIdType cellId, vtkIdType numPts, vtkIdList *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegratePixel(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateTriangleStrip(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateTriangle(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateWedge(vtkDataSet *input, vtkUnstructuredGrid *output, vtkGenericCell *cell, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, vtkIdList *cellPtIdsList, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegratePyramid(vtkDataSet *input, vtkUnstructuredGrid *output, vtkGenericCell *cell, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, vtkIdList *cellPtIdsList, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateData4(vtkDataSetAttributes *inda, vtkDataSetAttributes *outda, vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id, vtkIdType pt4Id, double volume, vtkIntegrateAttributesFieldList &fieldlist, int fieldlist_index) override
Integrates on data arrays depending on the number of node of the shape.
void IntegratePolygon(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateGeneral3DCell(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType numPts, const vtkIdType *cellPtIds, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
void IntegrateData1(vtkDataSetAttributes *inda, vtkDataSetAttributes *outda, vtkIdType pt1Id, double volume, vtkIntegrateAttributesFieldList &fieldlist, int fieldlist_index) override
Integrates on data arrays depending on the number of node of the shape.
void IntegrateTetrahedron(vtkDataSet *input, vtkUnstructuredGrid *output, vtkIdType cellId, vtkIdType pt1Id, vtkIdType pt2Id, vtkIdType pt3Id, vtkIdType pt4Id, double &sum, double sumCenter[3], vtkIntegrateAttributesFieldList &cellFieldList, vtkIntegrateAttributesFieldList &pointFieldList, int index) override
Integration functions operating on many cell types.
~vtkIntegrationLinearStrategy() override=default
void IntegrateData2(vtkDataSetAttributes *inda, vtkDataSetAttributes *outda, vtkIdType pt1Id, vtkIdType pt2Id, double volume, vtkIntegrateAttributesFieldList &fieldlist, int fieldlist_index) override
Integrates on data arrays depending on the number of node of the shape.
vtkIntegrationStrategy()=default
dataset represents arbitrary combinations of all possible cell types
int vtkIdType
Definition vtkType.h:367