vtk-m/vtkm/exec/Variant.h
Kenneth Moreland c029ac113d Expose the Variant helper class
For several versions, VTK-m has had a `Variant` templated class. This acts
like a templated union where the object will store one of a list of types
specified as the template arguments. (There are actually 2 versions for the
control and execution environments, respectively.)

Because this is a complex class that required several iterations to work
through performance and compiler issues, `Variant` was placed in the
`internal` namespace to avoid complications with backward compatibility.
However, the class has been stable for a while, so let us expose this
helpful tool for wider use.
2022-11-01 07:52:41 -06:00

20 lines
717 B
C

//============================================================================
// Copyright (c) Kitware, Inc.
// All rights reserved.
// See LICENSE.txt for details.
//
// This software is distributed WITHOUT ANY WARRANTY; without even
// the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
// PURPOSE. See the above copyright notice for more information.
//============================================================================
#ifndef vtk_m_exec_internal_Variant_h
#define vtk_m_exec_internal_Variant_h
// These specify exec version of Variant.
#define VTK_M_DEVICE VTKM_EXEC
#define VTK_M_NAMESPACE exec
#include <vtkm/internal/VariantImpl.h>
#endif //vtk_m_exec_internal_Variant_h