VTK
vtkmProbe.h
Go to the documentation of this file.
1 //=============================================================================
2 //
3 // Copyright (c) Kitware, Inc.
4 // All rights reserved.
5 // See LICENSE.txt for details.
6 //
7 // This software is distributed WITHOUT ANY WARRANTY; without even
8 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9 // PURPOSE. See the above copyright notice for more information.
10 //
11 // Copyright 2012 Sandia Corporation.
12 // Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
13 // the U.S. Government retains certain rights in this software.
14 //
15 //=============================================================================
44 #ifndef vtkmProbe_h
45 #define vtkmProbe_h
46 
47 #include <string> // for std::string
48 
49 #include "vtkAcceleratorsVTKmModule.h" //required for export
50 #include "vtkDataSetAlgorithm.h"
51 
52 class VTKACCELERATORSVTKM_EXPORT vtkmProbe : public vtkDataSetAlgorithm
53 {
54 public:
56  void PrintSelf(ostream& os, vtkIndent indent) override;
57  static vtkmProbe* New();
58 
60 
66  void SetSourceData(vtkDataObject *source);
67  vtkDataObject *GetSource();
69 
71 
77  void SetSourceConnection(vtkAlgorithmOutput* algOutput);
79 
81 
85  vtkSetMacro(PassCellArrays, vtkTypeBool);
86  vtkBooleanMacro(PassCellArrays, vtkTypeBool);
87  vtkGetMacro(PassCellArrays, vtkTypeBool);
89 
90 
94  vtkSetMacro(PassPointArrays, vtkTypeBool);
95  vtkBooleanMacro(PassPointArrays, vtkTypeBool);
96  vtkGetMacro(PassPointArrays, vtkTypeBool);
98 
100 
104  vtkSetMacro(PassFieldArrays, vtkTypeBool);
105  vtkBooleanMacro(PassFieldArrays, vtkTypeBool);
106  vtkGetMacro(PassFieldArrays, vtkTypeBool);
108 
110 
115  vtkSetMacro(ValidPointMaskArrayName, std::string)
116  vtkGetMacro(ValidPointMaskArrayName, std::string)
118 
120 
125  vtkSetMacro(ValidCellMaskArrayName, std::string)
126  vtkGetMacro(ValidCellMaskArrayName, std::string)
128 
129 protected:
130  vtkmProbe();
131  ~vtkmProbe()=default;
132 
133  vtkTypeBool PassCellArrays;
134  vtkTypeBool PassPointArrays;
135  vtkTypeBool PassFieldArrays;
136  std::string ValidPointMaskArrayName;
137  std::string ValidCellMaskArrayName;
138 
139  virtual int RequestData(vtkInformation*, vtkInformationVector**,
140  vtkInformationVector*) override;
141 
142  virtual int RequestUpdateExtent(vtkInformation*,
143  vtkInformationVector**,
144  vtkInformationVector*) override;
145 
146  virtual int RequestInformation(vtkInformation*,
147  vtkInformationVector**,
148  vtkInformationVector*) override;
149 
154  void PassAttributeData(vtkDataSet* input, vtkDataObject* source,
155  vtkDataSet* output);
156 
157 private:
158  vtkmProbe(const vtkmProbe&) = delete;
159  void operator=(const vtkmProbe&) = delete;
160 };
161 
162 #endif //vtkmProbe_h
163 // VTK-HeaderTest-Exclude: vtkmProbe.h
Sample data at specified point locations.
Definition: vtkmProbe.h:52
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
Proxy object to connect input/output ports.
int vtkTypeBool
Definition: vtkABI.h:69
a simple class to control print indentation
Definition: vtkIndent.h:39
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
Store zero or more vtkInformation instances.
Superclass for algorithms that produce output of the same type as input.
general representation of visualization data
Definition: vtkDataObject.h:64