Viskores  1.0
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
viskores::cont::PointLocatorBase Class Referenceabstract

Base class for all PointLocator classes. More...

#include <PointLocatorBase.h>

Inheritance diagram for viskores::cont::PointLocatorBase:
viskores::cont::ExecutionObjectBase viskores::cont::PointLocatorSparseGrid

Public Member Functions

virtual ~PointLocatorBase ()=default
 
viskores::cont::CoordinateSystem GetCoordinates () const
 Specify the CoordinateSystem defining the location of the cells. More...
 
void SetCoordinates (const viskores::cont::CoordinateSystem &coords)
 Specify the CoordinateSystem defining the location of the cells. More...
 
void SetCoordinates (const viskores::cont::UnknownArrayHandle &coords)
 Specify the CoordinateSystem defining the location of the cells. More...
 
void Update () const
 

Protected Member Functions

void SetModified ()
 
bool GetModified () const
 
virtual void Build ()=0
 

Private Attributes

viskores::cont::CoordinateSystem Coords
 
bool Modified = true
 

Detailed Description

Base class for all PointLocator classes.

PointLocatorBase subclasses must implement the pure virtual Build() method. They also must provide a PrepareForExecution() method to satisfy the ExecutionObjectBase superclass.

If a derived class changes its state in a way that invalidates its internal search structure, it should call the protected SetModified() method. This will alert the base class to rebuild the structure on the next call to Update().

Constructor & Destructor Documentation

◆ ~PointLocatorBase()

virtual viskores::cont::PointLocatorBase::~PointLocatorBase ( )
virtualdefault

Member Function Documentation

◆ Build()

virtual void viskores::cont::PointLocatorBase::Build ( )
protectedpure virtual

◆ GetCoordinates()

viskores::cont::CoordinateSystem viskores::cont::PointLocatorBase::GetCoordinates ( ) const
inline

Specify the CoordinateSystem defining the location of the cells.

This is often retrieved from the viskores::cont::DataSet::GetCoordinateSystem() method, but it can be any array of size 3 Vecs.

◆ GetModified()

bool viskores::cont::PointLocatorBase::GetModified ( ) const
inlineprotected

◆ SetCoordinates() [1/2]

void viskores::cont::PointLocatorBase::SetCoordinates ( const viskores::cont::CoordinateSystem coords)
inline

Specify the CoordinateSystem defining the location of the cells.

This is often retrieved from the viskores::cont::DataSet::GetCoordinateSystem() method, but it can be any array of size 3 Vecs.

◆ SetCoordinates() [2/2]

void viskores::cont::PointLocatorBase::SetCoordinates ( const viskores::cont::UnknownArrayHandle coords)
inline

Specify the CoordinateSystem defining the location of the cells.

This is often retrieved from the viskores::cont::DataSet::GetCoordinateSystem() method, but it can be any array of size 3 Vecs.

◆ SetModified()

void viskores::cont::PointLocatorBase::SetModified ( )
inlineprotected

◆ Update()

void viskores::cont::PointLocatorBase::Update ( ) const

Member Data Documentation

◆ Coords

viskores::cont::CoordinateSystem viskores::cont::PointLocatorBase::Coords
private

◆ Modified

bool viskores::cont::PointLocatorBase::Modified = true
mutableprivate

The documentation for this class was generated from the following file: