VTK  9.4.20250311
vtkMergeArrays.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-FileCopyrightText: Copyright (c) Kitware, Inc.
3// SPDX-License-Identifier: BSD-3-Clause
23#ifndef vtkMergeArrays_h
24#define vtkMergeArrays_h
25
26#include "vtkFiltersGeneralModule.h" // For export macro
28
29#include <string> // Needed for protected method argument
30
31VTK_ABI_NAMESPACE_BEGIN
32class vtkDataSet;
33class vtkFieldData;
34
35class VTKFILTERSGENERAL_EXPORT vtkMergeArrays : public vtkPassInputTypeAlgorithm
36{
37public:
39
41 void PrintSelf(ostream& os, vtkIndent indent) override;
42
43protected:
45 ~vtkMergeArrays() override;
46
48
53 virtual bool GetOutputArrayName(
54 vtkFieldData* arrays, const char* inArrayName, int inputIndex, std::string& outputArrayName);
56
58
62 void MergeArrays(int inputIndex, vtkFieldData* inputFD, vtkFieldData* outputFD);
63
65
69 virtual int MergeDataObjectFields(vtkDataObject* input, int inputIndex, vtkDataObject* output);
71
75 int FillInputPortInformation(int port, vtkInformation* info) override;
76
81 vtkInformationVector* outputVector) override;
82
84
85private:
86 vtkMergeArrays(const vtkMergeArrays&) = delete;
87 void operator=(const vtkMergeArrays&) = delete;
88};
89
90VTK_ABI_NAMESPACE_END
91#endif
general representation of visualization data
abstract class to specify dataset behavior
Definition vtkDataSet.h:165
represent and manipulate fields of data
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Multiple inputs with one output.
int FillInputPortInformation(int port, vtkInformation *info) override
Make sure that this filter can take a dynamic number of input.
static vtkMergeArrays * New()
virtual bool GetOutputArrayName(vtkFieldData *arrays, const char *inArrayName, int inputIndex, std::string &outputArrayName)
Given an existing set of output arrays and an array name and input data set index,...
void MergeArrays(int inputIndex, vtkFieldData *inputFD, vtkFieldData *outputFD)
Add input field arrays to output, mangling output array names as needed based on inputIndex.
virtual int MergeDataObjectFields(vtkDataObject *input, int inputIndex, vtkDataObject *output)
For a given input and index, add data arrays to the output.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
~vtkMergeArrays() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
Gets the metadata from input information and aggregates time information to the output.
Superclass for algorithms that produce output of the same type as input.