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 -------------------------------------------------------------------------*/
60 #ifndef vtkPassArrays_h
61 #define vtkPassArrays_h
62 
63 #include "vtkFiltersGeneralModule.h" // For export macro
64 #include "vtkDataObjectAlgorithm.h"
65 
66 class VTKFILTERSGENERAL_EXPORT vtkPassArrays : public vtkDataObjectAlgorithm
67 {
68 public:
69  static vtkPassArrays* New();
71  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
72 
79  virtual void AddArray(int fieldType, const char* name);
80 
81  virtual void AddPointDataArray(const char* name);
82  virtual void AddCellDataArray(const char* name);
83  virtual void AddFieldDataArray(const char* name);
84 
85  virtual void RemoveArray(int fieldType, const char* name);
86 
87  virtual void RemovePointDataArray(const char* name);
88  virtual void RemoveCellDataArray(const char* name);
89  virtual void RemoveFieldDataArray(const char* name);
90 
92 
95  virtual void ClearArrays();
96  virtual void ClearPointDataArrays();
97  virtual void ClearCellDataArrays();
98  virtual void ClearFieldDataArrays();
100 
102 
106  vtkSetMacro(RemoveArrays, bool);
107  vtkGetMacro(RemoveArrays, bool);
108  vtkBooleanMacro(RemoveArrays, bool);
110 
112 
117  vtkSetMacro(UseFieldTypes, bool);
118  vtkGetMacro(UseFieldTypes, bool);
119  vtkBooleanMacro(UseFieldTypes, bool);
121 
129  virtual void AddFieldType(int fieldType);
130 
134  virtual void ClearFieldTypes();
135 
139  int ProcessRequest(vtkInformation* request,
140  vtkInformationVector** inputVector,
141  vtkInformationVector* outputVector) VTK_OVERRIDE;
142 
143 protected:
144  vtkPassArrays();
145  ~vtkPassArrays() VTK_OVERRIDE;
146 
151  int FillInputPortInformation(int port, vtkInformation* info) VTK_OVERRIDE;
152 
156  int RequestDataObject(vtkInformation* request,
157  vtkInformationVector** inputVector,
158  vtkInformationVector* outputVector) VTK_OVERRIDE;
159 
160  int RequestData(
163  vtkInformationVector*) VTK_OVERRIDE;
164 
165  bool RemoveArrays;
166  bool UseFieldTypes;
167 
168  class Internals;
169  Internals* Implementation;
170 
171 private:
172  vtkPassArrays(const vtkPassArrays&) VTK_DELETE_FUNCTION;
173  void operator=(const vtkPassArrays&) VTK_DELETE_FUNCTION;
174 };
175 
176 #endif
177 
Store vtkAlgorithm input/output information.
static vtkDataObjectAlgorithm * New()
Passes a subset of arrays to the output.
Definition: vtkPassArrays.h:66
a simple class to control print indentation
Definition: vtkIndent.h:33
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.