Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
AMReX_EB2_IF_Base.H
Go to the documentation of this file.
1#ifndef AMREX_EB2_IF_BASE_H_
2#define AMREX_EB2_IF_BASE_H_
3#include <AMReX_Config.H>
4
5#include <AMReX_Gpu.H>
6#include <AMReX_Utility.H>
7#include <type_traits>
8
16namespace amrex {
17
19struct GPUable {};
20
21namespace EB2 {
22
24template <class D, class Enable = void> struct IsGPUable : std::false_type {};
25
26template <class D>
27struct IsGPUable<D, std::enable_if_t<std::is_base_of_v<GPUable,D>>>
28 : std::true_type {};
29
30}
31}
32
33#endif
Definition AMReX_Amr.cpp:49
Type trait that reports whether a functor derives from GPUable.
Definition AMReX_EB2_IF_Base.H:24
Marker base that denotes an implicit function callable on device kernels.
Definition AMReX_EB2_IF_Base.H:19