Deprecate boundary condition in neighborhood worklets

This feature was introduced but is never used anywhere. It is up to the
worklet subclass to determine what to do with the boundaries with the
`BoundaryState` object.

In the future we may have a neighborhood worklet of compile-fixed sized
for better memory access efficiency. If that is the case, we can
reintroduce this idea. We can decide on the right implementation if that
design ever comes to pass.
This commit is contained in:
Kenneth Moreland 2024-01-19 08:31:27 -05:00
parent 0b5960a994
commit 8ac9f6a5c0
2 changed files with 9 additions and 4 deletions

@ -11,6 +11,8 @@
#ifndef vtk_m_worklet_BoundaryTypes_h
#define vtk_m_worklet_BoundaryTypes_h
#include <vtkm/Deprecated.h>
namespace vtkm
{
namespace worklet
@ -33,7 +35,7 @@ namespace worklet
/// 1 1 2
/// 3 3 5
/// \endcode
struct BoundaryClamp
struct VTKM_DEPRECATED(2.2, "Never fully supported, so being removed.") BoundaryClamp
{
};
}

@ -58,16 +58,19 @@ public:
/// All worklets must define their scatter operation.
using ScatterType = vtkm::worklet::ScatterIdentity;
VTKM_DEPRECATED_SUPPRESS_BEGIN
/// All neighborhood worklets must define their boundary type operation.
/// The boundary type determines how loading on boundaries will work.
using BoundaryType = vtkm::worklet::BoundaryClamp;
using BoundaryType VTKM_DEPRECATED(2.2, "Never fully supported, so being removed.") =
vtkm::worklet::BoundaryClamp;
/// In addition to defining the boundary type, the worklet must produce the
/// boundary condition. The default BoundaryClamp has no state, so just return an
/// instance.
/// Note: Currently only BoundaryClamp is implemented
VTKM_CONT
BoundaryType GetBoundaryCondition() const { return BoundaryType(); }
VTKM_DEPRECATED(2.2, "Never fully supported, so being removed.")
VTKM_CONT BoundaryType GetBoundaryCondition() const { return BoundaryType(); }
VTKM_DEPRECATED_SUPPRESS_END
/// \brief A control signature tag for input point fields.
///