VTK
vtkSelectionNode.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkSelectionNode.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html 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 =========================================================================*/
52 #ifndef vtkSelectionNode_h
53 #define vtkSelectionNode_h
54 
55 #include "vtkCommonDataModelModule.h" // For export macro
56 #include "vtkObject.h"
57 
58 class vtkAbstractArray;
60 class vtkInformation;
64 class vtkProp;
65 class vtkTable;
66 
67 class VTKCOMMONDATAMODEL_EXPORT vtkSelectionNode : public vtkObject
68 {
69 public:
70  vtkTypeMacro(vtkSelectionNode,vtkObject);
71  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
72  static vtkSelectionNode* New();
73 
77  virtual void Initialize();
78 
80 
83  virtual void SetSelectionList(vtkAbstractArray*);
84  virtual vtkAbstractArray* GetSelectionList();
86 
88 
91  virtual void SetSelectionData(vtkDataSetAttributes* data);
92  vtkGetObjectMacro(SelectionData, vtkDataSetAttributes);
94 
96 
99  vtkGetObjectMacro(Properties, vtkInformation);
101 
105  virtual void DeepCopy(vtkSelectionNode* src);
106 
112  virtual void ShallowCopy(vtkSelectionNode* src);
113 
117  vtkMTimeType GetMTime() VTK_OVERRIDE;
118 
119  // vtkSelectionNode specific keys follow:
136  static vtkInformationIntegerKey* CONTENT_TYPE();
137 
139  {
140  SELECTIONS, // Deprecated.
148  BLOCKS, // used to select blocks within a composite dataset.
149  QUERY
150  };
151 
153 
157  virtual void SetContentType(int type);
158  virtual int GetContentType();
160 
167  static vtkInformationIntegerKey* FIELD_TYPE();
168 
170  {
176  ROW
177  };
178 
180 
184  virtual void SetFieldType(int type);
185  virtual int GetFieldType();
187 
189 
193  static int ConvertSelectionFieldToAttributeType(int val);
194  static int ConvertAttributeTypeToSelectionField(int val);
196 
198 
201  vtkSetStringMacro(QueryString);
202  vtkGetStringMacro(QueryString);
204 
208  static vtkInformationDoubleKey* EPSILON();
209 
214  static vtkInformationIntegerKey* CONTAINING_CELLS();
215 
223  static vtkInformationIntegerKey* COMPONENT_NUMBER();
224 
228  static vtkInformationIntegerKey* INVERSE();
229 
234  static vtkInformationIntegerKey* PIXEL_COUNT();
235 
239  static vtkInformationObjectBaseKey* SOURCE();
240 
245  static vtkInformationIntegerKey* SOURCE_ID();
246 
250  static vtkInformationObjectBaseKey* PROP();
251 
256  static vtkInformationIntegerKey* PROP_ID();
257 
261  static vtkInformationIntegerKey* PROCESS_ID();
262 
266  static vtkInformationIntegerKey* COMPOSITE_INDEX();
267 
269 
272  static vtkInformationIntegerKey* HIERARCHICAL_LEVEL();
273  static vtkInformationIntegerKey* HIERARCHICAL_INDEX();
275 
281  static vtkInformationIntegerKey* INDEXED_VERTICES();
282 
287  void UnionSelectionList(vtkSelectionNode* other);
288 
294  void SubtractSelectionList(vtkSelectionNode* other);
295 
299  bool EqualProperties(vtkSelectionNode* other, bool fullcompare=true);
300 
301 protected:
303  ~vtkSelectionNode() VTK_OVERRIDE;
304 
305  vtkInformation* Properties;
306  vtkDataSetAttributes* SelectionData;
307  char* QueryString;
308 
309 private:
310  vtkSelectionNode(const vtkSelectionNode&) VTK_DELETE_FUNCTION;
311  void operator=(const vtkSelectionNode&) VTK_DELETE_FUNCTION;
312 
313 };
314 
315 #endif
A node in a selection tree.
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:50
abstract base class for most VTK objects
Definition: vtkObject.h:59
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store vtkAlgorithm input/output information.
Abstract superclass for all arrays.
void DeepCopy(vtkPistonReference *self, vtkPistonReference *other)
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248
a simple class to control print indentation
Definition: vtkIndent.h:39
Key for integer values in vtkInformation.
virtual vtkMTimeType GetMTime()
Return this object's modified time.
Key for vtkObjectBase values.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
represent and manipulate attribute data in a dataset
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:68
Key for double values in vtkInformation.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...