edge::qnn::ModelImpl class final
#include <model.hpp>

Implementation of the Model interface for QNN models.

Base classes

class edge::Model
A base class for machine learning models.

Constructors, destructors, conversion operators

ModelImpl(const std::filesystem::path& modelPath) explicit
Constructor for ModelImpl.
ModelImpl(const nonstd::span<uint8_t>& modelBuffer) explicit
Constructor for ModelImpl.
ModelImpl(const ModelImpl&) deleted
ModelImpl(ModelImpl&&) deleted
~ModelImpl() defaulted final

Public functions

auto operator=(const ModelImpl&) -> ModelImpl & deleted
auto operator=(ModelImpl&&) -> ModelImpl & deleted
auto loadModel(const std::filesystem::path& modelPath) -> STATUS final
Loads the QNN model from the specified path.
auto loadModel(const nonstd::span<uint8_t>& modelBuffer) -> STATUS final
Loads the QNN model from the specified buffer.
auto applyDelegate(const DELEGATE& delegate) -> STATUS final
Applies a delegate to the QNN backend.
auto execute() -> STATUS final
Executes the QNN model.

Function documentation

edge::qnn::ModelImpl::ModelImpl(const std::filesystem::path& modelPath) explicit

Constructor for ModelImpl.

Parameters
modelPath The path to the QNN model file.

auto edge::qnn::ModelImpl::loadModel(const std::filesystem::path& modelPath) -> STATUS final

Loads the QNN model from the specified path.

Parameters
modelPath The path to the QNN model file.
Returns STATUS Returns a status indicating whether the model was successfully loaded or not.

This function loads a QNN model from the specified file path. The model file should be in the QNN context binary format.

auto edge::qnn::ModelImpl::loadModel(const nonstd::span<uint8_t>& modelBuffer) -> STATUS final

Loads the QNN model from the specified buffer.

Parameters
modelBuffer The buffer containing the QNN model.
Returns STATUS Returns a status indicating whether the model was successfully loaded or not.

This function loads a QNN model from the provided buffer. The buffer should contain the raw data of the QNN model.

auto edge::qnn::ModelImpl::applyDelegate(const DELEGATE& delegate) -> STATUS final

Applies a delegate to the QNN backend.

Parameters
delegate The delegate to apply.
Returns The status of the operation.

auto edge::qnn::ModelImpl::execute() -> STATUS final

Executes the QNN model.

Returns The status of the operation.