VTK  9.7.1
vtkCellDataToPointData.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
48 #ifndef vtkCellDataToPointData_h
49 #define vtkCellDataToPointData_h
50 
51 #include "vtkDataSetAlgorithm.h"
52 #include "vtkFiltersCoreModule.h" // For export macro
53 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
54 
55 VTK_ABI_NAMESPACE_BEGIN
56 class vtkDataSet;
57 
58 class VTKFILTERSCORE_EXPORT VTK_MARSHALAUTO vtkCellDataToPointData : public vtkDataSetAlgorithm
59 {
60 public:
62 
65  static vtkCellDataToPointData* New();
67  void PrintSelf(ostream& os, vtkIndent indent) override;
69 
72  {
73  All = 0,
74  Patch = 1,
75  DataSetMax = 2
76  };
77 
79 
84  vtkSetMacro(PassCellData, bool);
85  vtkGetMacro(PassCellData, bool);
86  vtkBooleanMacro(PassCellData, bool);
88 
90 
94  vtkSetClampMacro(ContributingCellOption, int, 0, 2);
95  vtkGetMacro(ContributingCellOption, int);
97 
99 
103  vtkSetMacro(ProcessAllArrays, bool);
104  vtkGetMacro(ProcessAllArrays, bool);
105  vtkBooleanMacro(ProcessAllArrays, bool);
107 
109 
113  vtkSetMacro(PieceInvariant, bool);
114  vtkGetMacro(PieceInvariant, bool);
115  vtkBooleanMacro(PieceInvariant, bool);
117 
123  virtual void AddCellDataArray(const char* name);
124 
130  virtual void RemoveCellDataArray(const char* name);
131 
136  virtual void ClearCellDataArrays();
137 
138 protected:
140  ~vtkCellDataToPointData() override;
141 
142  virtual vtkIdType GetNumberOfCellArraysToProcess();
143  virtual void GetCellArraysToProcess(const char* names[]);
144 
145  int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
146  vtkInformationVector* outputVector) override;
148 
150 
154  int RequestDataForUnstructuredData(
157 
158  int InterpolatePointData(vtkDataSet* input, vtkDataSet* output);
159 
161 
166 
168 
174 
179 
181 
182  class Internals;
183  Internals* Implementation;
184 
185 private:
187  void operator=(const vtkCellDataToPointData&) = delete;
188 };
189 
190 VTK_ABI_NAMESPACE_END
191 #endif
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:56
int vtkIdType
Definition: vtkType.h:363
#define vtkCellDataToPointData
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
map cell data to point data
bool PassCellData
Option to pass cell data arrays through to the output.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.
ContributingCellEnum
Options to specify what cells contribute to the cell-averaging calculation.
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when each filter in the pipeline decides what portion of its inp...
bool ProcessAllArrays
Option to activate selective processing of arrays.
Store zero or more vtkInformation instances.
#define VTK_MARSHALAUTO
Superclass for algorithms that produce output of the same type as input.
static vtkDataSetAlgorithm * New()
int ContributingCellOption
Option to specify what cells to include in the computation.