15 template<alpaka::concepts::Api T_Api, alpaka::concepts::DeviceKind T_DeviceKind>
18 template<
typename T_Device>
21 template<alpaka::concepts::Api T_Api, alpaka::concepts::DeviceKind T_DeviceKind>
28 *std::declval<DeviceInterface>().get()));
35 template<
typename T_Event>
62 return this->
get() == other.get();
67 return this->
get() != other.get();
85 template<
typename T_Event>
#define ALPAKA_TYPEOF(...)
Get the type of instance.
constexpr auto getApi(auto &&any)
constexpr auto getDeviceKind(auto &&any)
bool isEventComplete(auto &&any)
constexpr auto getDevice(auto &&any)
auto getNativeHandle(auto &&any)
Functionality which is usable on the host CPU controller thread.
Event(Handle< T_Event > &&) -> Event< Device< ALPAKA_TYPEOF(alpaka::internal::getApi(std::declval< T_Event >())), ALPAKA_TYPEOF(alpaka::internal::getDeviceKind(std::declval< T_Event >()))> >
std::shared_ptr< T > Handle
constexpr decltype(auto) get(concepts::SpecializationOf< Dict > auto &t) noexcept
Description of a specific device that one can schedule kernels on.
auto getDevice() const
Get the device of this event.
auto getNativeHandle() const
bool operator==(Event const &other) const
std::string getName() const
ALPAKA_TYPEOF( internal::MakeEvent::Op< ALPAKA_TYPEOF(*std::declval< DeviceInterface >().get())>{}( *std::declval< DeviceInterface >().get())) EventHandle
Event(Handle< T_Event > &&event)
typename EventHandle::element_type element_type
Device< T_Api, T_DeviceKind > DeviceInterface
constexpr auto getApi() const
bool operator!=(Event const &other) const