Host type conversions#

APIs for converting CUVPA Host C++ objects to cuPVA Host C objects.

cuPVA provides both C++ APIs and C APIs.

Users may convert from C++ API objects to C API objects via these conversion APIs.

The APIs can be used to transfer ownership to the C API object (in conjunction with std::move) or create a C API copy (for types which support copy constructors). In most cases this means that the C API destructor will need to be called to release the object. There are a few exceptions to this rule, refer to C API documentation for details.

Functions#

void cupva::ConvertTo(OffsetPointer< void const > input, cupvaOffsetPointer_t &output) noexcept

Convert from a C++ OffsetPointer object to a C API cupvaOffsetPointer_t .

void cupva::ConvertTo(Executable input, cupvaExecutable_t &output) noexcept

Convert from a C++ Executable object to a C API cupvaExecutable_t.

void cupva::ConvertTo(BaseDataFlow input, cupvaDataFlow_t &output) noexcept

Convert from a C++ BaseDataFlow object to a C API cupvaDataFlow_t.

void cupva::ConvertTo(BaseCmd input, cupvaCmd_t &output) noexcept

Convert from a C++ BaseCmd object to a C API cupvaCmd_t .

void cupva::ConvertTo(SyncObj input, cupvaSyncObj_t &output) noexcept

Convert from a C++ SyncObj object to a C API cupvaSyncObj_t.

void cupva::ConvertTo(CmdBuffer input, cupvaCmdBuffer_t &output) noexcept

Convert from a C++ CmdBuffer to a C API cupvaCmdBuffer_t.

void cupva::ConvertTo(Parameter input, cupvaParameter_t &output) noexcept

Convert from a C++ Parameter object to a C API cupvaParameter_t .

void cupva::ConvertTo(Stream input, cupvaStream_t &output) noexcept

Convert from a C++ Stream object to a C API cupvaStream_t.

void cupva::ConvertTo(Context input, cupvaContext_t &output) noexcept

Convert from a C++ Context to a C API cupvaContext_t.

void cupva::ConvertTo(Fence input, cupvaFence_t &output) noexcept

Convert from a C++ Fence object to a C API cupvaFence_t .