VTK  9.7.1
vtkAttributeDataToTableFilter.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright 2008-2023 Kitware, Inc.
3 // SPDX-License-Identifier: BSD-3-Clause
21 #ifndef vtkAttributeDataToTableFilter_h
22 #define vtkAttributeDataToTableFilter_h
23 
24 #include "vtkFiltersCoreModule.h" // needed for export macro
25 #include "vtkTableAlgorithm.h"
26 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
27 
28 VTK_ABI_NAMESPACE_BEGIN
29 class vtkDataSet;
30 class vtkFieldData;
31 class vtkIdTypeArray;
32 
34 {
35 public:
38  void PrintSelf(ostream& os, vtkIndent indent) override;
39 
41 
54  vtkSetMacro(FieldAssociation, int);
55  vtkGetMacro(FieldAssociation, int);
57 
59 
65  vtkSetMacro(AddMetaData, bool);
66  vtkGetMacro(AddMetaData, bool);
67  vtkBooleanMacro(AddMetaData, bool);
69 
71 
76  vtkSetMacro(GenerateOriginalIds, bool);
77  vtkGetMacro(GenerateOriginalIds, bool);
78  vtkBooleanMacro(GenerateOriginalIds, bool);
80 
82 
86  vtkSetMacro(GenerateCellConnectivity, bool);
87  vtkGetMacro(GenerateCellConnectivity, bool);
88  vtkBooleanMacro(GenerateCellConnectivity, bool);
90 
91 protected:
94 
100  int FillInputPortInformation(int port, vtkInformation* info) override;
101 
106 
110  void Decorate(vtkTable* output, vtkDataObject* input);
111 
112  void PassFieldData(vtkFieldData* output, vtkFieldData* input);
113  void AddCellTypeAndConnectivity(vtkTable* output, vtkDataSet* ds);
114 
115 private:
117  void operator=(const vtkAttributeDataToTableFilter&) = delete;
118 
123  void ConvertToOriginalIds(vtkDataSet* inputDS, vtkIdTypeArray* indices);
124 
125  int FieldAssociation;
126  bool AddMetaData = false;
127  bool GenerateOriginalIds = false;
128  bool GenerateCellConnectivity = false;
129 };
130 VTK_ABI_NAMESPACE_END
131 
132 #endif
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkTableAlgorithm * New()
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:56
this filter produces a vtkTable from the chosen attribute in the input data object.
dynamic, self-adjusting array of vtkIdType
a simple class to control print indentation
Definition: vtkIndent.h:28
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:59
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
Superclass for algorithms that produce only vtkTables as output.
Store zero or more vtkInformation instances.
#define VTK_MARSHALAUTO
general representation of visualization data
Definition: vtkDataObject.h:55
Represents and manipulates a collection of data arrays.
Definition: vtkFieldData.h:51