63 lines
2.4 KiB
C++
63 lines
2.4 KiB
C++
/*
|
|
* Copyright (C) 2020-2021 Intel Corporation
|
|
*
|
|
* SPDX-License-Identifier: MIT
|
|
*
|
|
*/
|
|
|
|
#include "level_zero/experimental/source/tracing/tracing_imp.h"
|
|
|
|
ZE_APIEXPORT ze_result_t ZE_APICALL
|
|
zeSamplerCreate_Tracing(ze_context_handle_t hContext,
|
|
ze_device_handle_t hDevice,
|
|
const ze_sampler_desc_t *pDesc,
|
|
ze_sampler_handle_t *phSampler) {
|
|
|
|
ZE_HANDLE_TRACER_RECURSION(driver_ddiTable.core_ddiTable.Sampler.pfnCreate,
|
|
hContext,
|
|
hDevice,
|
|
pDesc,
|
|
phSampler);
|
|
|
|
ze_sampler_create_params_t tracerParams;
|
|
tracerParams.phContext = &hContext;
|
|
tracerParams.phDevice = &hDevice;
|
|
tracerParams.pdesc = &pDesc;
|
|
tracerParams.pphSampler = &phSampler;
|
|
|
|
L0::APITracerCallbackDataImp<ze_pfnSamplerCreateCb_t> apiCallbackData;
|
|
|
|
ZE_GEN_PER_API_CALLBACK_STATE(apiCallbackData, ze_pfnSamplerCreateCb_t, Sampler, pfnCreateCb);
|
|
|
|
return L0::APITracerWrapperImp(driver_ddiTable.core_ddiTable.Sampler.pfnCreate,
|
|
&tracerParams,
|
|
apiCallbackData.apiOrdinal,
|
|
apiCallbackData.prologCallbacks,
|
|
apiCallbackData.epilogCallbacks,
|
|
*tracerParams.phContext,
|
|
*tracerParams.phDevice,
|
|
*tracerParams.pdesc,
|
|
*tracerParams.pphSampler);
|
|
}
|
|
|
|
ZE_APIEXPORT ze_result_t ZE_APICALL
|
|
zeSamplerDestroy_Tracing(ze_sampler_handle_t hSampler) {
|
|
|
|
ZE_HANDLE_TRACER_RECURSION(driver_ddiTable.core_ddiTable.Sampler.pfnDestroy,
|
|
hSampler);
|
|
|
|
ze_sampler_destroy_params_t tracerParams;
|
|
tracerParams.phSampler = &hSampler;
|
|
|
|
L0::APITracerCallbackDataImp<ze_pfnSamplerDestroyCb_t> apiCallbackData;
|
|
|
|
ZE_GEN_PER_API_CALLBACK_STATE(apiCallbackData, ze_pfnSamplerDestroyCb_t, Sampler, pfnDestroyCb);
|
|
|
|
return L0::APITracerWrapperImp(driver_ddiTable.core_ddiTable.Sampler.pfnDestroy,
|
|
&tracerParams,
|
|
apiCallbackData.apiOrdinal,
|
|
apiCallbackData.prologCallbacks,
|
|
apiCallbackData.epilogCallbacks,
|
|
*tracerParams.phSampler);
|
|
}
|