vtkPVSelectionSource.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
13 #ifndef vtkPVSelectionSource_h
14 #define vtkPVSelectionSource_h
15 
16 #include "vtkPVVTKExtensionsExtractionModule.h" //needed for exports
17 #include "vtkSelectionAlgorithm.h"
18 
20 {
21 public:
22  static vtkPVSelectionSource* New();
24  void PrintSelf(ostream& os, vtkIndent indent) override;
25 
29  void AddFrustum(double vertices[32]);
30 
32 
35  void AddGlobalID(vtkIdType id);
36  void RemoveAllGlobalIDs();
38 
40 
43  void AddPedigreeID(const char* domain, vtkIdType id);
44  void RemoveAllPedigreeIDs();
46 
48 
51  void AddPedigreeStringID(const char* domain, const char* id);
52  void RemoveAllPedigreeStringIDs();
54 
56 
61  void AddID(vtkIdType piece, vtkIdType id);
62  void RemoveAllIDs();
64 
66 
71  void AddValue(vtkIdType piece, vtkIdType value);
72  void RemoveAllValues();
74 
76 
83  void AddCompositeID(unsigned int composite_index, vtkIdType piece, vtkIdType id);
84  void RemoveAllCompositeIDs();
86 
88 
92  void AddHierarhicalID(unsigned int level, unsigned int dataset, vtkIdType id);
93  void RemoveAllHierarchicalIDs();
95 
97 
100  void AddThreshold(double min, double max);
101  void RemoveAllThresholds();
103 
105 
108  void AddBlock(vtkIdType blockno);
109  void RemoveAllBlocks();
111 
116  vtkSetStringMacro(ArrayName);
117 
119 
122  void AddLocation(double x, double y, double z);
123  void RemoveAllLocations();
125 
127 
131  void AddBlockSelector(const char* selector);
132  void RemoveAllBlockSelectors();
134 
136 
140  vtkSetClampMacro(ProcessID, int, -1, VTK_INT_MAX);
141  vtkGetMacro(ProcessID, int);
143 
145 
150  vtkSetMacro(FieldType, int);
151  vtkGetMacro(FieldType, int);
153 
155 
159  vtkSetMacro(ContainingCells, int);
160  vtkGetMacro(ContainingCells, int);
162 
164  vtkSetMacro(Inverse, int);
165  vtkGetMacro(Inverse, int);
167 
169 
172  vtkSetStringMacro(QueryString);
173  vtkGetStringMacro(QueryString);
175 
177 
180  vtkSetClampMacro(NumberOfLayers, int, 0, VTK_INT_MAX);
181  vtkGetMacro(NumberOfLayers, int);
183 
185 
190  vtkSetMacro(RemoveSeed, bool);
191  vtkGetMacro(RemoveSeed, bool);
193 
195 
200  vtkSetMacro(RemoveIntermediateLayers, bool);
201  vtkGetMacro(RemoveIntermediateLayers, bool);
203 protected:
205  ~vtkPVSelectionSource() override;
206 
207  int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector,
208  vtkInformationVector* outputVector) override;
209  int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
210  vtkInformationVector* outputVector) override;
211 
212  enum Modes
213  {
216  ID,
226  };
227 
232  int Inverse;
233  double Frustum[32];
234  char* ArrayName;
235  char* QueryString;
237  bool RemoveSeed = false;
238  bool RemoveIntermediateLayers = false;
239 
240 private:
242  void operator=(const vtkPVSelectionSource&) = delete;
243 
244  class vtkInternal;
245  vtkInternal* Internal;
246 };
247 
248 #endif
#define VTKPVVTKEXTENSIONSEXTRACTION_EXPORT
int vtkIdType
static vtkSelectionAlgorithm * New()
selection source used to produce different types of vtkSelections.
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
void operator=(const vtkObjectBase &)