.. 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 :ref:`DPCTL_API` :ref:`__dpctl_give` :ref:`DPCTLSyclEventRef` :ref:`DPCTLEvent_Copy`(:ref:`__dpctl_keep` const :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` :ref:`__dpctl_give` :ref:`DPCTLSyclEventRef` :ref:`DPCTLEvent_Create`(void); :ref:`DPCTL_API` void :ref:`DPCTLEvent_Delete`(:ref:`__dpctl_take` :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` :ref:`DPCTLSyclBackendType` :ref:`DPCTLEvent_GetBackend`(:ref:`__dpctl_keep` :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` :ref:`DPCTLSyclEventStatusType` :ref:`DPCTLEvent_GetCommandExecutionStatus`(:ref:`__dpctl_keep` :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` uint64_t :ref:`DPCTLEvent_GetProfilingInfoEnd`(:ref:`__dpctl_keep` :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` uint64_t :ref:`DPCTLEvent_GetProfilingInfoStart`(:ref:`__dpctl_keep` :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` uint64_t :ref:`DPCTLEvent_GetProfilingInfoSubmit`(:ref:`__dpctl_keep` :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` :ref:`__dpctl_give` :ref:`DPCTLEventVectorRef` :ref:`DPCTLEvent_GetWaitList`(:ref:`__dpctl_keep` :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` void :ref:`DPCTLEvent_Wait`(:ref:`__dpctl_keep` :ref:`DPCTLSyclEventRef` ERef); :ref:`DPCTL_API` void :ref:`DPCTLEvent_WaitAndThrow`(:ref:`__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 :ref:`DPCTL_API` :ref:`__dpctl_give` :ref:`DPCTLSyclEventRef` DPCTLEvent_Copy(:ref:`__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 :ref:`DPCTL_API` :ref:`__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 :ref:`DPCTL_API` void DPCTLEvent_Delete(:ref:`__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 :ref:`DPCTL_API` :ref:`DPCTLSyclBackendType` DPCTLEvent_GetBackend(:ref:`__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 :ref:`DPCTL_API` :ref:`DPCTLSyclEventStatusType` DPCTLEvent_GetCommandExecutionStatus(:ref:`__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 :ref:`DPCTL_API` uint64_t DPCTLEvent_GetProfilingInfoEnd(:ref:`__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 :ref:`DPCTL_API` uint64_t DPCTLEvent_GetProfilingInfoStart(:ref:`__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 :ref:`DPCTL_API` uint64_t DPCTLEvent_GetProfilingInfoSubmit(:ref:`__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 :ref:`DPCTL_API` :ref:`__dpctl_give` :ref:`DPCTLEventVectorRef` DPCTLEvent_GetWaitList(:ref:`__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 :ref:`DPCTL_API` void DPCTLEvent_Wait(:ref:`__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 :ref:`DPCTL_API` void DPCTLEvent_WaitAndThrow(:ref:`__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``