VTK-m  2.0
Source.h
Go to the documentation of this file.
1 //============================================================================
2 // Copyright (c) Kitware, Inc.
3 // All rights reserved.
4 // See LICENSE.txt for details.
5 //
6 // This software is distributed WITHOUT ANY WARRANTY; without even
7 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
8 // PURPOSE. See the above copyright notice for more information.
9 //============================================================================
10 
11 #ifndef vtk_m_source_Source_h
12 #define vtk_m_source_Source_h
13 
14 #include <vtkm/cont/DataSet.h>
15 #include <vtkm/cont/Invoker.h>
16 #include <vtkm/source/vtkm_source_export.h>
17 
18 namespace vtkm
19 {
20 namespace source
21 {
22 
23 class VTKM_SOURCE_EXPORT Source
24 {
25 public:
26  VTKM_CONT
27  virtual ~Source() = default;
28 
29  vtkm::cont::DataSet Execute() const { return this->DoExecute(); }
30 
31 protected:
32  virtual vtkm::cont::DataSet DoExecute() const = 0;
33 
35 };
36 
37 } // namespace source
38 } // namespace vtkm
39 
40 #endif // vtk_m_source_Source_h
vtkm
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::source::Source
Definition: Source.h:23
vtkm::cont::DataSet
Definition: DataSet.h:34
Invoker.h
vtkm::source::Source::Invoke
vtkm::cont::Invoker Invoke
Definition: Source.h:34
vtkm::cont::Invoker
Allows launching any worklet without a dispatcher.
Definition: Invoker.h:41
VTKM_CONT
#define VTKM_CONT
Definition: ExportMacros.h:57
vtkm::source::Source::Execute
vtkm::cont::DataSet Execute() const
Definition: Source.h:29
DataSet.h