VTK  9.0.2
vtkmClip.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 //=============================================================================
25 #ifndef vtkmClip_h
26 #define vtkmClip_h
27 
28 #include "vtkAcceleratorsVTKmModule.h" // For export macro
30 
31 #include <memory> // For std::unique_ptr
32 
34 
35 namespace tovtkm
36 {
37 
39 
40 } // namespace tovtkm
41 
42 class VTKACCELERATORSVTKM_EXPORT vtkmClip : public vtkUnstructuredGridAlgorithm
43 {
44 public:
45  static vtkmClip* New();
47  void PrintSelf(ostream& os, vtkIndent indent) override;
48 
53  vtkGetMacro(ClipValue, double);
54  vtkSetMacro(ClipValue, double);
55 
60  vtkGetMacro(ComputeScalars, bool);
61  vtkSetMacro(ComputeScalars, bool);
62 
69  vtkGetObjectMacro(ClipFunction, vtkImplicitFunction);
70 
71  vtkMTimeType GetMTime() override;
72 
73 protected:
75  ~vtkmClip() override;
76 
78 
80 
81  double ClipValue;
83 
85  std::unique_ptr<tovtkm::ImplicitFunctionConverter> ClipFunctionConverter;
86 
87 private:
88  vtkmClip(const vtkmClip&) = delete;
89  void operator=(const vtkmClip&) = delete;
90 };
91 
92 #endif // vtkmClip_h
93 // VTK-HeaderTest-Exclude: vtkmClip.h
abstract interface for implicit functions
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only unstructured grid as output.
Clip a dataset using the accelerated vtk-m Clip filter.
Definition: vtkmClip.h:43
bool ComputeScalars
Definition: vtkmClip.h:82
std::unique_ptr< tovtkm::ImplicitFunctionConverter > ClipFunctionConverter
Definition: vtkmClip.h:85
static vtkmClip * New()
vtkImplicitFunction * ClipFunction
Definition: vtkmClip.h:84
double ClipValue
Definition: vtkmClip.h:81
void SetClipFunction(vtkImplicitFunction *)
Set the implicit function with which to perform the clipping.
vtkMTimeType GetMTime() override
Return this object's modified time.
~vtkmClip() override
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
@ info
Definition: vtkX3D.h:382
@ port
Definition: vtkX3D.h:453
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:293