openpilot v0.9.6 release
date: 2024-02-21T23:02:42 master commit: 0b4d08fab8e35a264bc7383e878538f8083c33e5
This commit is contained in:
105
third_party/snpe/include/DlSystem/IUDL.hpp
vendored
Normal file
105
third_party/snpe/include/DlSystem/IUDL.hpp
vendored
Normal file
@@ -0,0 +1,105 @@
|
||||
//=============================================================================
|
||||
//
|
||||
// Copyright (c) 2016-2021 Qualcomm Technologies, Inc.
|
||||
// All Rights Reserved.
|
||||
// Confidential and Proprietary - Qualcomm Technologies, Inc.
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
#ifndef _DL_SYSTEM_IUDL_HPP_
|
||||
#define _DL_SYSTEM_IUDL_HPP_
|
||||
|
||||
#include "ZdlExportDefine.hpp"
|
||||
|
||||
namespace zdl {
|
||||
namespace DlSystem {
|
||||
|
||||
/**
|
||||
* NOTE: DEPRECATED, MAY BE REMOVED IN THE FUTURE.
|
||||
*
|
||||
* @brief .
|
||||
*
|
||||
* Base class user concrete UDL implementation.
|
||||
*
|
||||
* All functions are marked as:
|
||||
*
|
||||
* - virtual
|
||||
* - noexcept
|
||||
*
|
||||
* User should make sure no exceptions are propagated outside of
|
||||
* their module. Errors can be communicated via return values.
|
||||
*/
|
||||
class ZDL_EXPORT IUDL {
|
||||
public:
|
||||
/**
|
||||
* NOTE: DEPRECATED, MAY BE REMOVED IN THE FUTURE.
|
||||
*
|
||||
* @brief .
|
||||
*
|
||||
* Destructor
|
||||
*/
|
||||
virtual ~IUDL() = default;
|
||||
|
||||
/**
|
||||
* NOTE: DEPRECATED, MAY BE REMOVED IN THE FUTURE.
|
||||
*
|
||||
* @brief Sets up the user's environment.
|
||||
* This is called by the SNPE framework to allow the user the
|
||||
* opportunity to setup anything which is needed for running
|
||||
* user defined layers.
|
||||
*
|
||||
* @param cookie User provided opaque data returned by the SNPE
|
||||
* runtime
|
||||
*
|
||||
* @param insz How many elements in input size array
|
||||
* @param indim Pointer to a buffer that holds input dimension
|
||||
* array
|
||||
* @param indimsz Input dimension size array of the buffer
|
||||
* 'indim'. Corresponds to indim
|
||||
*
|
||||
* @param outsz How many elements in output size array
|
||||
* @param outdim Pointer to a buffer that holds output
|
||||
* dimension array
|
||||
* @param outdimsz Output dimension size of the buffer 'oudim'.
|
||||
* Corresponds to indim
|
||||
*
|
||||
* @return true on success, false otherwise
|
||||
*/
|
||||
virtual bool setup(void *cookie,
|
||||
size_t insz, const size_t **indim, const size_t *indimsz,
|
||||
size_t outsz, const size_t **outdim, const size_t *outdimsz) = 0;
|
||||
|
||||
/**
|
||||
* NOTE: DEPRECATED, MAY BE REMOVED IN THE FUTURE.
|
||||
*
|
||||
* @brief Close the instance. Invoked by the SNPE
|
||||
* framework to allow the user the opportunity to release any resources
|
||||
* allocated during setup.
|
||||
*
|
||||
* @param cookie - User provided opaque data returned by the SNPE runtime
|
||||
*/
|
||||
virtual void close(void *cookie) noexcept = 0;
|
||||
|
||||
/**
|
||||
* NOTE: DEPRECATED, MAY BE REMOVED IN THE FUTURE.
|
||||
*
|
||||
* @brief Execute the user defined layer
|
||||
*
|
||||
* @param cookie User provided opaque data returned by the SNPE
|
||||
* runtime
|
||||
*
|
||||
* @param input Const pointer to a float buffer that contains
|
||||
* the input
|
||||
*
|
||||
* @param output Float pointer to a buffer that would hold
|
||||
* the user defined layer's output. This buffer
|
||||
* is allocated and owned by SNPE runtime.
|
||||
*/
|
||||
virtual bool execute(void *cookie, const float **input, float **output) = 0;
|
||||
};
|
||||
|
||||
} // ns DlSystem
|
||||
|
||||
} // ns zdl
|
||||
|
||||
#endif // _DL_SYSTEM_IUDL_HPP_
|
||||
Reference in New Issue
Block a user