19 #include <type_traits>
29 template<
typename TAcc>
36 template<
typename T,
typename TSfinae =
void>
40 template<
typename TAcc,
typename TSfinae =
void>
46 template<
typename TAcc,
typename TSfinae =
void>
51 return core::demangled<TAcc>;
61 template<
typename TAcc,
typename TDev>
71 template<
typename TAcc>
79 template<
typename TAcc,
typename TProperty>
80 struct QueueType<TAcc, TProperty, std::enable_if_t<concepts::ImplementsConcept<ConceptAcc, TAcc>::value>>
typename detail::ImplementationBaseType< TConcept, TDerived >::type ImplementationBase
Returns the type that implements the given concept in the inheritance hierarchy.
The alpaka accelerator library.
typename trait::IdxType< T >::type Idx
constexpr bool isAccelerator
True if TAcc is an accelerator, i.e. if it implements the ConceptAcc concept.
ALPAKA_FN_HOST auto getAccDevProps(TDev const &dev) -> AccDevProps< Dim< TAcc >, Idx< TAcc >>
ALPAKA_FN_HOST auto getAccName() -> std::string
typename trait::AccType< T >::type Acc
The accelerator type trait alias template to remove the ::type.
The acceleration properties on a device.
Checks whether the concept is implemented by the given class.
The accelerator type trait.
The device properties get trait.
The accelerator name trait.
static ALPAKA_FN_HOST auto getAccName() -> std::string
typename QueueType< typename alpaka::trait::PlatformType< TAcc >::type, TProperty >::type type
Queue for an accelerator.