.. index:: pair: group; Event class C wrapper .. _doxid-df/d2d/group___event_interface: Event class C wrapper ===================== .. toctree:: :hidden: Overview ~~~~~~~~ .. ref-code-block:: cpp :class: doxyrest-overview-code-block // global functions DPCTL_API __dpctl_give :ref:`DPCTLSyclEventRef` :ref:`DPCTLEvent_Copy`(__dpctl_keep const :ref:`DPCTLSyclEventRef` ERef); DPCTL_API __dpctl_give :ref:`DPCTLSyclEventRef` :ref:`DPCTLEvent_Create`(void); DPCTL_API void :ref:`DPCTLEvent_Delete`(__dpctl_take :ref:`DPCTLSyclEventRef` ERef); DPCTL_API :ref:`DPCTLSyclBackendType` :ref:`DPCTLEvent_GetBackend`(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef); DPCTL_API :ref:`DPCTLSyclEventStatusType` :ref:`DPCTLEvent_GetCommandExecutionStatus`(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef); DPCTL_API uint64_t :ref:`DPCTLEvent_GetProfilingInfoEnd`(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef); DPCTL_API uint64_t :ref:`DPCTLEvent_GetProfilingInfoStart`(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef); DPCTL_API uint64_t :ref:`DPCTLEvent_GetProfilingInfoSubmit`(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef); DPCTL_API __dpctl_give :ref:`DPCTLEventVectorRef` :ref:`DPCTLEvent_GetWaitList`(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef); DPCTL_API void :ref:`DPCTLEvent_Wait`(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef); DPCTL_API void :ref:`DPCTLEvent_WaitAndThrow`(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef); .. _details-df/d2d/group___event_interface: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Global Functions ---------------- .. index:: pair: function; DPCTLEvent_Copy .. _doxid-df/d2d/group___event_interface_1ga0e67256b553c86cc2c01b8ba2ed18378: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API __dpctl_give :ref:`DPCTLSyclEventRef` DPCTLEvent_Copy(__dpctl_keep const :ref:`DPCTLSyclEventRef` ERef) Returns a copy of the DPCTLSyclEventRef object. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - DPCTLSyclEventRef object to be copied. .. rubric:: Returns: A new DPCTLSyclEventRef created by copying the passed in DPCTLSyclEventRef object. .. index:: pair: function; DPCTLEvent_Create .. _doxid-df/d2d/group___event_interface_1ga9e1f10306d442c2253fd549fec3a045f: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API __dpctl_give :ref:`DPCTLSyclEventRef` DPCTLEvent_Create(void) A wrapper for ``sycl::event`` constructor to construct a new event. .. rubric:: Returns: An opaque DPCTLSyclEventRef pointer wrapping a ``sycl::event``. .. index:: pair: function; DPCTLEvent_Delete .. _doxid-df/d2d/group___event_interface_1gae16fbf7465ec6d86a63e042100feba77: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API void DPCTLEvent_Delete(__dpctl_take :ref:`DPCTLSyclEventRef` ERef) Deletes the DPCTLSyclEventRef after casting it to a ``sycl::event``. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - An opaque DPCTLSyclEventRef pointer that would be freed. .. index:: pair: function; DPCTLEvent_GetBackend .. _doxid-df/d2d/group___event_interface_1ga30a3bc34163bac7dcb7d03b5666e157c: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API :ref:`DPCTLSyclBackendType` DPCTLEvent_GetBackend(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef) Returns a DPCTLSyclBackendType enum value identifying the SYCL backend associated with the event. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - Opaque pointer to a ``sycl::event`` .. rubric:: Returns: A DPCTLSyclBackendType enum value identifying the SYCL backend associated with the event. .. index:: pair: function; DPCTLEvent_GetCommandExecutionStatus .. _doxid-df/d2d/group___event_interface_1gaba5717c1481def3ceb1fc0ee6c3dabe9: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API :ref:`DPCTLSyclEventStatusType` DPCTLEvent_GetCommandExecutionStatus(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef) Returns the DPCTLSyclEventStatusType enum value for the DPCTLSyclEventRef argument. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - Opaque pointer to a ``sycl::event`` .. rubric:: Returns: The DPCTLSyclDEventStatusType value corresponding to the event. .. index:: pair: function; DPCTLEvent_GetProfilingInfoEnd .. _doxid-df/d2d/group___event_interface_1ga87d98a9b0d6d7de64cf10b7782a746dd: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API uint64_t DPCTLEvent_GetProfilingInfoEnd(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef) Wrapper over ``event.get_profiling_info()`` .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - Opaque pointer to a ``sycl::event`` .. rubric:: Returns: Returns a value describing the time in nanoseconds when the action associated with the command group (e.g. kernel invocation) finished executing on the device. .. index:: pair: function; DPCTLEvent_GetProfilingInfoStart .. _doxid-df/d2d/group___event_interface_1ga82b888e75071bab550a39257f32ef993: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API uint64_t DPCTLEvent_GetProfilingInfoStart(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef) Wrapper over ``event.get_profiling_info()`` .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - Opaque pointer to a ``sycl::event`` .. rubric:: Returns: Returns a value describing the time in nanoseconds when the action associated with the command group (e.g. kernel invocation) started executing on the device. .. index:: pair: function; DPCTLEvent_GetProfilingInfoSubmit .. _doxid-df/d2d/group___event_interface_1gaa1e8ec801992e1fdb0836463f73fcc85: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API uint64_t DPCTLEvent_GetProfilingInfoSubmit(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef) Wrapper over ``event.get_profiling_info()`` .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - Opaque pointer to a ``sycl::event`` .. rubric:: Returns: Returns a value describing the time in nanoseconds when the associated command group was submitted to the queue. .. index:: pair: function; DPCTLEvent_GetWaitList .. _doxid-df/d2d/group___event_interface_1ga77eab99e200776384c7c345c0f2011c7: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API __dpctl_give :ref:`DPCTLEventVectorRef` DPCTLEvent_GetWaitList(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef) C-API wrapper for ``sycl::event::get_wait_list``. Returns a vector of events that this event still waits for. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - Opaque pointer to a ``sycl::event``. .. rubric:: Returns: A DPCTLEventVectorRef of DPCTLSyclEventRef objects. .. index:: pair: function; DPCTLEvent_Wait .. _doxid-df/d2d/group___event_interface_1ga3befe2587ca487628646214b7cf3b96e: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API void DPCTLEvent_Wait(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef) C-API wrapper for sycl::event.wait. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - An opaque DPCTLSyclEventRef pointer on which to wait. .. index:: pair: function; DPCTLEvent_WaitAndThrow .. _doxid-df/d2d/group___event_interface_1ga4b955b64cc76d942f20384e4fd566bbf: .. ref-code-block:: cpp :class: doxyrest-title-code-block DPCTL_API void DPCTLEvent_WaitAndThrow(__dpctl_keep :ref:`DPCTLSyclEventRef` ERef) C-API wrapper for 'sycl::event.wait_and_throw'. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - ERef - Opaque pointer to a ``sycl::event``