VTK
vtkMapArrayValues.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkMapArrayValues.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=========================================================================*/
39#ifndef vtkMapArrayValues_h
40#define vtkMapArrayValues_h
41
42#include "vtkRenderingCoreModule.h" // For export macro
44
45class vtkMapType;
46class vtkVariant;
47
48class VTKRENDERINGCORE_EXPORT vtkMapArrayValues : public vtkPassInputTypeAlgorithm
49{
50public:
52 void PrintSelf(ostream& os, vtkIndent indent);
53
55
57
63 vtkGetMacro(FieldType, int);
65
67
72 vtkSetMacro(PassArray, int);
73 vtkGetMacro(PassArray, int);
74 vtkBooleanMacro(PassArray, int);
76
78
83 vtkSetMacro(FillValue, double);
84 vtkGetMacro(FillValue, double);
86
88
91 vtkSetStringMacro(InputArrayName);
92 vtkGetStringMacro(InputArrayName);
94
96
99 vtkSetStringMacro(OutputArrayName);
100 vtkGetStringMacro(OutputArrayName);
102
104
108 vtkGetMacro(OutputArrayType, int);
109 vtkSetMacro(OutputArrayType, int);
111
113
118 void AddToMap(int from, int to);
119 void AddToMap(int from, char *to);
120 void AddToMap(char *from, int to);
121 void AddToMap(char *from, char *to);
123
127 void ClearMap();
128
133
134 // Always keep NUM_ATTRIBUTE_LOCS as the last entry
136 {
137 POINT_DATA=0,
138 CELL_DATA=1,
139 VERTEX_DATA=2,
140 EDGE_DATA=3,
141 ROW_DATA=4,
142 NUM_ATTRIBUTE_LOCS
143 };
144
145protected:
146
149
152
159 double FillValue;
160
161 // PIMPL idiom to hide map implementation.
162 vtkMapType *Map;
163
164private:
165 vtkMapArrayValues(const vtkMapArrayValues&) VTK_DELETE_FUNCTION;
166 void operator=(const vtkMapArrayValues&) VTK_DELETE_FUNCTION;
167};
168
169#endif
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Map values in an input array to different values in an output array of (possibly) different type.
int GetMapSize()
Get the size of the internal map.
void ClearMap()
Clear the internal map.
void AddToMap(char *from, char *to)
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.
static vtkMapArrayValues * New()
void AddToMap(vtkVariant from, vtkVariant to)
Add to the internal STL map.
void AddToMap(char *from, int to)
int FillInputPortInformation(int, vtkInformation *)
Fill the input port information objects for this algorithm.
void AddToMap(int from, int to)
virtual ~vtkMapArrayValues()
void AddToMap(int from, char *to)
Superclass for algorithms that produce output of the same type as input.
A atomic type representing the union of many types.
Definition: vtkVariant.h:76
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.