16 namespace internal::concepts
20 { alpaka::internal::GetName::Op<T>{}(
device) } -> std::convertible_to<std::string>;
21 { internal::MakeEvent::Op<T>{}(
device) };
22 { internal::GetNativeHandle::Op<T>{}(
device) };
23 { internal::GetDeviceProperties::Op<T>{}(
device) };
27 concept Platform =
requires(T platform) {
28 { alpaka::internal::GetName::Op<T>{}(platform) };
33 { alpaka::internal::GetName::Op<T>{}(
device) } -> std::convertible_to<std::string>;
34 { internal::GetNativeHandle::Op<T>{}(
device) };
38 concept QueueHandle =
requires(T t) {
39 typename T::element_type;
44 concept PlatformHandle =
requires(T t) {
45 typename T::element_type;
46 requires Platform<typename T::element_type>;
50 concept DeviceHandle =
requires(T t) {
51 typename T::element_type;
60 typename T::element_type;
66 typename T::element_type;
Functionality which is usable on the host CPU controller thread.
Device(Handle< T_Device > &&) -> Device< ALPAKA_TYPEOF(alpaka::internal::getApi(std::declval< T_Device >())), ALPAKA_TYPEOF(alpaka::internal::getDeviceKind(std::declval< T_Device >()))>
Queue(Handle< T_Queue > &&, T_QueueKind) -> Queue< Device< ALPAKA_TYPEOF(alpaka::internal::getApi(std::declval< T_Queue >())), ALPAKA_TYPEOF(alpaka::internal::getDeviceKind(std::declval< T_Queue >()))>, T_QueueKind >