VTK
vtkPassArrays.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPassArrays.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 =========================================================================*/
15 /*-------------------------------------------------------------------------
16  Copyright 2008 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19 -------------------------------------------------------------------------*/
63 #ifndef vtkPassArrays_h
64 #define vtkPassArrays_h
65 
66 #include "vtkFiltersGeneralModule.h" // For export macro
67 #include "vtkDataObjectAlgorithm.h"
68 
69 class VTKFILTERSGENERAL_EXPORT vtkPassArrays : public vtkDataObjectAlgorithm
70 {
71 public:
72  static vtkPassArrays* New();
74  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
75 
82  virtual void AddArray(int fieldType, const char* name);
83 
84  virtual void AddPointDataArray(const char* name);
85  virtual void AddCellDataArray(const char* name);
86  virtual void AddFieldDataArray(const char* name);
87 
88  virtual void RemoveArray(int fieldType, const char* name);
89 
90  virtual void RemovePointDataArray(const char* name);
91  virtual void RemoveCellDataArray(const char* name);
92  virtual void RemoveFieldDataArray(const char* name);
93 
95 
98  virtual void ClearArrays();
99  virtual void ClearPointDataArrays();
100  virtual void ClearCellDataArrays();
101  virtual void ClearFieldDataArrays();
103 
105 
109  vtkSetMacro(RemoveArrays, bool);
110  vtkGetMacro(RemoveArrays, bool);
111  vtkBooleanMacro(RemoveArrays, bool);
113 
115 
120  vtkSetMacro(UseFieldTypes, bool);
121  vtkGetMacro(UseFieldTypes, bool);
122  vtkBooleanMacro(UseFieldTypes, bool);
124 
132  virtual void AddFieldType(int fieldType);
133 
137  virtual void ClearFieldTypes();
138 
142  int ProcessRequest(vtkInformation* request,
143  vtkInformationVector** inputVector,
144  vtkInformationVector* outputVector) VTK_OVERRIDE;
145 
146 protected:
147  vtkPassArrays();
148  ~vtkPassArrays() VTK_OVERRIDE;
149 
154  int FillInputPortInformation(int port, vtkInformation* info) VTK_OVERRIDE;
155 
159  int RequestDataObject(vtkInformation* request,
160  vtkInformationVector** inputVector,
161  vtkInformationVector* outputVector) VTK_OVERRIDE;
162 
163  int RequestData(
166  vtkInformationVector*) VTK_OVERRIDE;
167 
168  bool RemoveArrays;
169  bool UseFieldTypes;
170 
171  class Internals;
172  Internals* Implementation;
173 
174 private:
175  vtkPassArrays(const vtkPassArrays&) VTK_DELETE_FUNCTION;
176  void operator=(const vtkPassArrays&) VTK_DELETE_FUNCTION;
177 };
178 
179 #endif
180 
Store vtkAlgorithm input/output information.
static vtkDataObjectAlgorithm * New()
Passes a subset of arrays to the output.
Definition: vtkPassArrays.h:69
a simple class to control print indentation
Definition: vtkIndent.h:39
int ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
see vtkAlgorithm for details
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Superclass for algorithms that produce only data object as output.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.