You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
3.4 KiB
108 lines
3.4 KiB
//==============================================================================
|
|
//
|
|
// Copyright (c) 2019-2020 Qualcomm Technologies, Inc.
|
|
// All Rights Reserved.
|
|
// Confidential and Proprietary - Qualcomm Technologies, Inc.
|
|
//
|
|
//==============================================================================
|
|
|
|
#ifndef SNPE_UDO_REG_H
|
|
#define SNPE_UDO_REG_H
|
|
|
|
#include "SnpeUdo/UdoShared.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
/** @addtogroup c_plus_plus_apis C++
|
|
@{ */
|
|
|
|
/**
|
|
* @brief Initialize the shared library's data structures. Calling any other
|
|
* library function before this one will result in an error being returned.
|
|
*
|
|
* @return Error code
|
|
*/
|
|
SnpeUdo_ErrorType_t
|
|
SnpeUdo_initRegLibrary(void);
|
|
|
|
typedef SnpeUdo_ErrorType_t
|
|
(*SnpeUdo_InitRegLibraryFunction_t)(void);
|
|
|
|
/**
|
|
* @brief A function to query the API version of the UDO registration library.
|
|
* The function populates a SnpeUdo_LibVersion_t struct, which contains a SnpeUdo_Version_t
|
|
* struct for API version and library version.
|
|
*
|
|
* @param[in, out] version A pointer to struct which contains major, minor, teeny information for
|
|
* library and api versions.
|
|
*
|
|
* @return Error code
|
|
*/
|
|
SnpeUdo_ErrorType_t
|
|
SnpeUdo_getRegLibraryVersion(SnpeUdo_LibVersion_t** version);
|
|
|
|
typedef SnpeUdo_ErrorType_t
|
|
(*SnpeUdo_getRegLibraryVersion_t)(SnpeUdo_LibVersion_t** version);
|
|
|
|
/**
|
|
* @brief Release the shared library's data structures, and invalidate any
|
|
* handles returned by the library. The behavior of any outstanding
|
|
* asynchronous calls made to this library when this function is called
|
|
* are undefined. All library functions (except SnpeUdo_InitRegLibrary) will
|
|
* return an error after this function has been successfully called.
|
|
*
|
|
* It should be possible to call SnpeUdo_InitRegLibrary after calling this
|
|
* function, and re-initialize the library.
|
|
*
|
|
* @return Error code
|
|
*/
|
|
SnpeUdo_ErrorType_t
|
|
SnpeUdo_terminateRegLibrary(void);
|
|
|
|
typedef SnpeUdo_ErrorType_t
|
|
(*SnpeUdo_TerminateRegLibraryFunction_t)(void);
|
|
|
|
|
|
/**
|
|
* @brief A function to query the info on the UDO set.
|
|
* The function populates a structure which contains information about
|
|
* the package and operations contained in it.
|
|
*
|
|
* @param[in, out] registrationInfo A struct which contains information on the set of UDOs
|
|
*
|
|
* @return Error code
|
|
*
|
|
*/
|
|
SnpeUdo_ErrorType_t
|
|
SnpeUdo_getRegInfo(SnpeUdo_RegInfo_t** registrationInfo);
|
|
|
|
typedef SnpeUdo_ErrorType_t
|
|
(*SnpeUdo_GetRegInfoFunction_t)(SnpeUdo_RegInfo_t** registrationInfo);
|
|
|
|
/**
|
|
* @brief A function to validate that a set of params is supported by an operation
|
|
* The function receives an operation definition struct, and returns if this configuration is
|
|
* supported (e.g. if an operation can be created using this configuration)
|
|
*
|
|
* @param[in] opDefinition A struct of SnpeUdo_OpDefinition type, containing the information needed to
|
|
* validate that an operation can be created with this configuration.
|
|
*
|
|
* @return Error code, indicating is the operation can be created on this set or not.
|
|
*
|
|
*/
|
|
SnpeUdo_ErrorType_t
|
|
SnpeUdo_validateOperation(SnpeUdo_OpDefinition_t* opDefinition);
|
|
|
|
typedef SnpeUdo_ErrorType_t
|
|
(*SnpeUdo_ValidateOperationFunction_t)(SnpeUdo_OpDefinition_t* opDefinition);
|
|
|
|
/** @} */ /* end_addtogroup c_plus_plus_apis C++ */
|
|
|
|
#ifdef __cplusplus
|
|
} // extern "C"
|
|
#endif
|
|
|
|
#endif //SNPE_UDO_REG_H
|
|
|