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 =========================================================================*/
46 #ifndef vtkSelectionNode_h
47 #define vtkSelectionNode_h
48 
49 #include "vtkCommonDataModelModule.h" // For export macro
50 #include "vtkObject.h"
51 
52 class vtkAbstractArray;
54 class vtkInformation;
58 class vtkProp;
59 class vtkTable;
60 
61 class VTKCOMMONDATAMODEL_EXPORT vtkSelectionNode : public vtkObject
62 {
63 public:
64  vtkTypeMacro(vtkSelectionNode,vtkObject);
65  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
66  static vtkSelectionNode* New();
67 
71  virtual void Initialize();
72 
74 
77  virtual void SetSelectionList(vtkAbstractArray*);
78  virtual vtkAbstractArray* GetSelectionList();
80 
82 
85  virtual void SetSelectionData(vtkDataSetAttributes* data);
86  vtkGetObjectMacro(SelectionData, vtkDataSetAttributes);
88 
90 
93  vtkGetObjectMacro(Properties, vtkInformation);
95 
99  virtual void DeepCopy(vtkSelectionNode* src);
100 
106  virtual void ShallowCopy(vtkSelectionNode* src);
107 
111  vtkMTimeType GetMTime() VTK_OVERRIDE;
112 
113  // vtkSelectionNode specific keys follow:
130  static vtkInformationIntegerKey* CONTENT_TYPE();
131 
133  {
134  SELECTIONS, // Deprecated.
142  BLOCKS, // used to select blocks within a composite dataset.
143  QUERY
144  };
145 
147 
151  virtual void SetContentType(int type);
152  virtual int GetContentType();
154 
161  static vtkInformationIntegerKey* FIELD_TYPE();
162 
164  {
170  ROW
171  };
172 
174 
178  virtual void SetFieldType(int type);
179  virtual int GetFieldType();
181 
183 
187  static int ConvertSelectionFieldToAttributeType(int val);
188  static int ConvertAttributeTypeToSelectionField(int val);
190 
192 
195  vtkSetStringMacro(QueryString);
196  vtkGetStringMacro(QueryString);
198 
202  static vtkInformationDoubleKey* EPSILON();
203 
208  static vtkInformationIntegerKey* CONTAINING_CELLS();
209 
217  static vtkInformationIntegerKey* COMPONENT_NUMBER();
218 
222  static vtkInformationIntegerKey* INVERSE();
223 
228  static vtkInformationIntegerKey* PIXEL_COUNT();
229 
233  static vtkInformationObjectBaseKey* SOURCE();
234 
239  static vtkInformationIntegerKey* SOURCE_ID();
240 
244  static vtkInformationObjectBaseKey* PROP();
245 
250  static vtkInformationIntegerKey* PROP_ID();
251 
255  static vtkInformationIntegerKey* PROCESS_ID();
256 
260  static vtkInformationIntegerKey* COMPOSITE_INDEX();
261 
263 
266  static vtkInformationIntegerKey* HIERARCHICAL_LEVEL();
267  static vtkInformationIntegerKey* HIERARCHICAL_INDEX();
269 
275  static vtkInformationIntegerKey* INDEXED_VERTICES();
276 
281  void UnionSelectionList(vtkSelectionNode* other);
282 
288  void SubtractSelectionList(vtkSelectionNode* other);
289 
293  bool EqualProperties(vtkSelectionNode* other, bool fullcompare=true);
294 
295 protected:
297  ~vtkSelectionNode() VTK_OVERRIDE;
298 
299  vtkInformation* Properties;
300  vtkDataSetAttributes* SelectionData;
301  char* QueryString;
302 
303 private:
304  vtkSelectionNode(const vtkSelectionNode&) VTK_DELETE_FUNCTION;
305  void operator=(const vtkSelectionNode&) VTK_DELETE_FUNCTION;
306 
307 };
308 
309 #endif
A node in a selection tree.
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:44
abstract base class for most VTK objects
Definition: vtkObject.h:53
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:300
Abstract superclass for all arrays.
a simple class to control print indentation
Definition: vtkIndent.h:33
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:62
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...