VTK-m  2.2
CellLocatorBase.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_cont_internal_CellLocatorBase_h
11 #define vtk_m_cont_internal_CellLocatorBase_h
12 
14 
15 #include <vtkm/Deprecated.h>
16 #include <vtkm/Types.h>
20 
21 namespace vtkm
22 {
23 namespace cont
24 {
25 
36 {
39  mutable bool Modified = true;
40 
41 public:
42  virtual ~CellLocatorBase() = default;
43 
47  VTKM_CONT const vtkm::cont::UnknownCellSet& GetCellSet() const { return this->CellSet; }
50  {
51  this->CellSet = cellSet;
52  this->SetModified();
53  }
54 
58  VTKM_CONT const vtkm::cont::CoordinateSystem& GetCoordinates() const { return this->Coords; }
61  {
62  this->Coords = coords;
63  this->SetModified();
64  }
65 
77  VTKM_CONT void Update() const;
78 
79 protected:
80  void SetModified() { this->Modified = true; }
81  bool GetModified() const { return this->Modified; }
82 
83  virtual void Build() = 0;
84 };
85 
86 }
87 } // vtkm::cont::internal
88 
89 #endif //vtk_m_cont_internal_CellLocatorBase_h
vtkm
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::cont::CellLocatorBase::SetCoordinates
void SetCoordinates(const vtkm::cont::CoordinateSystem &coords)
Specify the CoordinateSystem defining the location of the cells.
Definition: CellLocatorBase.h:60
Types.h
UnknownCellSet.h
vtkm::cont::CellLocatorBase::GetCellSet
const vtkm::cont::UnknownCellSet & GetCellSet() const
Specify the CellSet defining the structure of the cells being searched.
Definition: CellLocatorBase.h:47
vtkm::cont::UnknownCellSet
A CellSet of an unknown type.
Definition: UnknownCellSet.h:48
CoordinateSystem.h
vtkm::cont::CoordinateSystem
Manages a coordinate system for a DataSet.
Definition: CoordinateSystem.h:30
vtkm::cont::CellLocatorBase::GetCoordinates
const vtkm::cont::CoordinateSystem & GetCoordinates() const
Specify the CoordinateSystem defining the location of the cells.
Definition: CellLocatorBase.h:58
vtkm::cont::CellLocatorBase
Base class for all CellLocator classes.
Definition: CellLocatorBase.h:35
vtkm::cont::CellLocatorBase::Coords
vtkm::cont::CoordinateSystem Coords
Definition: CellLocatorBase.h:38
VTKM_CONT_EXPORT
#define VTKM_CONT_EXPORT
Definition: vtkm_cont_export.h:44
vtkm_cont_export.h
VTKM_CONT
#define VTKM_CONT
Definition: ExportMacros.h:57
vtkm::cont::CellLocatorBase::GetModified
bool GetModified() const
Definition: CellLocatorBase.h:81
vtkm::cont::CellLocatorBase::SetCellSet
void SetCellSet(const vtkm::cont::UnknownCellSet &cellSet)
Specify the CellSet defining the structure of the cells being searched.
Definition: CellLocatorBase.h:49
vtkm::cont::ExecutionObjectBase
Base ExecutionObjectBase for execution objects to inherit from so that you can use an arbitrary objec...
Definition: ExecutionObjectBase.h:31
vtkm::cont::CellLocatorBase::SetModified
void SetModified()
Definition: CellLocatorBase.h:80
Deprecated.h
vtkm::cont::CellLocatorBase::CellSet
vtkm::cont::UnknownCellSet CellSet
Definition: CellLocatorBase.h:37
ExecutionObjectBase.h