VTK-m  2.2
Classes | Namespaces | Macros
ExecutionSignatureTagBase.h File Reference
#include <vtkm/StaticAssert.h>
#include <vtkm/internal/ExportMacros.h>
#include <type_traits>

Go to the source code of this file.

Classes

struct  vtkm::exec::arg::ExecutionSignatureTagBase
 The base class for all tags used in an ExecutionSignature. More...
 

Namespaces

 vtkm
 Groups connected points that have the same field value.
 
 vtkm::exec
 VTK-m Execution Environment.
 
 vtkm::exec::arg
 

Macros

#define VTKM_IS_EXECUTION_SIGNATURE_TAG(tag)
 Checks that the argument is a proper tag for an ExecutionSignature. More...
 

Macro Definition Documentation

◆ VTKM_IS_EXECUTION_SIGNATURE_TAG

#define VTKM_IS_EXECUTION_SIGNATURE_TAG (   tag)
Value:
VTKM_STATIC_ASSERT_MSG(::vtkm::exec::arg::internal::ExecutionSignatureTagCheck<tag>::Valid, \
"Provided a type that is not a valid ExecutionSignature tag.")

Checks that the argument is a proper tag for an ExecutionSignature.

This is a handy concept check when modifying tags or dispatching to make sure that a template argument is actually an ExecutionSignature tag. (You can get weird errors elsewhere in the code when a mistake is made.)

VTKM_STATIC_ASSERT_MSG
#define VTKM_STATIC_ASSERT_MSG(condition, message)
Definition: StaticAssert.h:18