VTK
vtkAppendFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAppendFilter.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
33 #ifndef vtkAppendFilter_h
34 #define vtkAppendFilter_h
35 
36 #include "vtkFiltersCoreModule.h" // For export macro
38 
41 
42 class VTKFILTERSCORE_EXPORT vtkAppendFilter : public vtkUnstructuredGridAlgorithm
43 {
44 public:
45  static vtkAppendFilter *New();
46 
48  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
49 
53  vtkDataSet *GetInput(int idx);
55  {return this->GetInput( 0 );}
56 
58 
63  vtkGetMacro(MergePoints,int);
65 
67 
72  vtkSetMacro(MergePoints,int);
74 
75  vtkBooleanMacro(MergePoints,int);
76 
80  void RemoveInputData(vtkDataSet *in);
81 
86  vtkDataSetCollection *GetInputList();
87 
89 
94  vtkSetClampMacro(OutputPointsPrecision, int, SINGLE_PRECISION, DEFAULT_PRECISION);
95  vtkGetMacro(OutputPointsPrecision, int);
97 
98 protected:
100  ~vtkAppendFilter() VTK_OVERRIDE;
101 
102  // Usual data generation method
103  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
104  int RequestUpdateExtent(vtkInformation *,
105  vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
106  int FillInputPortInformation(int port, vtkInformation *info) VTK_OVERRIDE;
107 
108  // list of data sets to append together.
109  // Here as a convenience. It is a copy of the input array.
111 
112  //If true we will attempt to merge points. Must also not have
113  //ghost cells defined.
114  int MergePoints;
115 
116  int OutputPointsPrecision;
117 
118 private:
119  vtkAppendFilter(const vtkAppendFilter&) VTK_DELETE_FUNCTION;
120  void operator=(const vtkAppendFilter&) VTK_DELETE_FUNCTION;
121 
122  // Get all input data sets that have points, cells, or both.
123  // Caller must delete the returned vtkDataSetCollection.
124  vtkDataSetCollection* GetNonEmptyInputs(vtkInformationVector ** inputVector);
125 
126  void AppendArrays(int attributesType,
127  vtkInformationVector **inputVector,
128  vtkIdType* globalIds,
129  vtkUnstructuredGrid* output,
130  vtkIdType totalNumberOfElements);
131 };
132 
133 
134 #endif
135 
136 
maintain an unordered list of dataset objects
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
static vtkUnstructuredGridAlgorithm * New()
vtkDataSet * GetInput()
int vtkIdType
Definition: vtkType.h:287
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:39
dataset represents arbitrary combinations of all possible cell types
represent and manipulate attribute data in a dataset
Superclass for algorithms that produce only unstructured grid as output.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
appends one or more datasets together into a single unstructured grid
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.