VTK  9.1.0
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 "vtkAcceleratorsVTKmFiltersModule.h" // For export macro
30 
31 #include <memory> // For std::unique_ptr
32 
34 
35 class VTKACCELERATORSVTKMFILTERS_EXPORT vtkmClip : public vtkUnstructuredGridAlgorithm
36 {
37 public:
38  static vtkmClip* New();
40  void PrintSelf(ostream& os, vtkIndent indent) override;
41 
46  double GetClipValue();
47  void SetClipValue(double);
48 
54  void SetComputeScalars(bool);
55 
63 
64  vtkMTimeType GetMTime() override;
65 
67 
73  vtkGetMacro(ForceVTKm, vtkTypeBool);
74  vtkSetMacro(ForceVTKm, vtkTypeBool);
75  vtkBooleanMacro(ForceVTKm, vtkTypeBool);
77 
78 protected:
80  ~vtkmClip() override;
81 
84 
85  vtkTypeBool ForceVTKm = false;
86 
87  struct internals;
88  std::unique_ptr<internals> Internals;
89 
90 private:
91  vtkmClip(const vtkmClip&) = delete;
92  void operator=(const vtkmClip&) = delete;
93 };
94 
95 #endif // 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:36
double GetClipValue()
The scalar value to use when clipping the dataset.
static vtkmClip * New()
bool GetComputeScalars()
If true, all input point data arrays will be mapped onto the output dataset.
void SetClipFunction(vtkImplicitFunction *)
Set the implicit function with which to perform the clipping.
std::unique_ptr< internals > Internals
Definition: vtkmClip.h:87
vtkMTimeType GetMTime() override
Return this object's modified time.
void SetClipValue(double)
void SetComputeScalars(bool)
~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.
vtkImplicitFunction * GetClipFunction()
@ info
Definition: vtkX3D.h:382
@ port
Definition: vtkX3D.h:453
int vtkTypeBool
Definition: vtkABI.h:69
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287