VTK-m  2.0
FetchTagWholeCellSetIn.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 #ifndef vtk_m_exec_arg_FetchTagWholeCellSetIn_h
11 #define vtk_m_exec_arg_FetchTagWholeCellSetIn_h
12 
14 #include <vtkm/exec/arg/Fetch.h>
15 
16 #include <type_traits>
17 
18 namespace vtkm
19 {
20 namespace exec
21 {
22 namespace arg
23 {
24 
29 {
30 };
31 
32 template <typename ExecObjectType>
35  ExecObjectType>
36 {
37  using ValueType = ExecObjectType;
38 
40  template <typename ThreadIndicesType>
41  VTKM_EXEC ValueType Load(const ThreadIndicesType& vtkmNotUsed(indices),
42  const ExecObjectType& execObject) const
43  {
44  return execObject;
45  }
46 
47  template <typename ThreadIndicesType>
48  VTKM_EXEC void Store(const ThreadIndicesType&, const ExecObjectType&, const ValueType&) const
49  {
50  // Store is a no-op for this fetch.
51  }
52 };
53 }
54 }
55 } // namespace vtkm::exec::arg
56 
57 #endif //vtk_m_exec_arg_FetchTagWholeCellSetIn_h
VTKM_EXEC
#define VTKM_EXEC
Definition: ExportMacros.h:51
vtkm
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::exec::arg::Fetch< vtkm::exec::arg::FetchTagWholeCellSetIn, vtkm::exec::arg::AspectTagDefault, ExecObjectType >::Store
VTKM_EXEC void Store(const ThreadIndicesType &, const ExecObjectType &, const ValueType &) const
Definition: FetchTagWholeCellSetIn.h:48
vtkm::exec::arg::Fetch
Class for loading and storing values in thread instance.
Definition: Fetch.h:49
vtkm::exec::arg::FetchTagWholeCellSetIn
Fetch tag for whole cell sets.
Definition: FetchTagWholeCellSetIn.h:28
Fetch.h
AspectTagDefault.h
vtkm::exec::arg::Fetch< vtkm::exec::arg::FetchTagWholeCellSetIn, vtkm::exec::arg::AspectTagDefault, ExecObjectType >::ValueType
ExecObjectType ValueType
Definition: FetchTagWholeCellSetIn.h:37
vtkmNotUsed
#define vtkmNotUsed(parameter_name)
Simple macro to identify a parameter as unused.
Definition: ExportMacros.h:128
vtkm::exec::arg::Fetch< vtkm::exec::arg::FetchTagWholeCellSetIn, vtkm::exec::arg::AspectTagDefault, ExecObjectType >::Load
VTKM_SUPPRESS_EXEC_WARNINGS VTKM_EXEC ValueType Load(const ThreadIndicesType &vtkmNotUsed(indices), const ExecObjectType &execObject) const
Definition: FetchTagWholeCellSetIn.h:41
vtkm::exec::arg::AspectTagDefault
Aspect tag to use for default load/store of data.
Definition: AspectTagDefault.h:22
VTKM_SUPPRESS_EXEC_WARNINGS
#define VTKM_SUPPRESS_EXEC_WARNINGS
Definition: ExportMacros.h:53