cupva_host_nvsci.h#

Fully qualified name: src/host/c_api/include/cupva_host_nvsci.h

File members: src/host/c_api/include/cupva_host_nvsci.h

/*
 * Copyright (c) 2022, NVIDIA CORPORATION. All rights reserved.
 *
 * NVIDIA Corporation and its licensors retain all intellectual property
 * and proprietary rights in and to this software, related documentation
 * and any modifications thereto.  Any use, reproduction, disclosure or
 * distribution of this software and related documentation without an express
 * license agreement from NVIDIA Corporation is strictly prohibited.
 */

#ifndef CUPVA_HOST_NVSCI_H
#define CUPVA_HOST_NVSCI_H

#include <detail/scheduling/cupva_host_mem_alloc.h>
#include <detail/scheduling/cupva_host_types_scheduling.h>
#include <nvscibuf.h>
#include <nvscisync.h>

#ifdef __cplusplus
extern "C" {
#endif

DLL_EXPORT cupvaError_t CupvaMemFillAttributes(NvSciBufAttrList const sciBufAttr);

DLL_EXPORT cupvaError_t CupvaMemImport(void **const pvaPtr, NvSciBufObj const buff,
                                       cupvaMemAccessType_t const accessType);

DLL_EXPORT cupvaError_t CupvaFenceImport(cupvaFence_t *const fence, NvSciSyncFence const *const sciFence);

DLL_EXPORT cupvaError_t CupvaFenceExport(cupvaFence_t const *const fence, NvSciSyncFence *const sciFence);

DLL_EXPORT cupvaError_t CupvaSyncObjCreateFromNvsci(cupvaSyncObj_t *const syncObj, NvSciSyncObj const sciSyncobj,
                                                    cupvaSyncClientType_t const clientType);

DLL_EXPORT cupvaError_t CupvaSyncObjFillAttributes(NvSciSyncAttrList *const attrList,
                                                   cupvaSyncClientType_t const clientType);

#ifdef __cplusplus
}
#endif
#endif