ONE - On-device Neural Engine
Loading...
Searching...
No Matches
onert_micro::import::KernelCustomConfigureRegistry Class Reference

#include <OMKernelConfigureBuilder.h>

Public Member Functions

constexpr KernelCustomConfigureRegistry ()
 
OMStatus getKernelConfigureFunc (core::OMBuilderID builderID, KernelConfigureFunc **configure_func) const
 

Detailed Description

Definition at line 88 of file OMKernelConfigureBuilder.h.

Constructor & Destructor Documentation

◆ KernelCustomConfigureRegistry()

constexpr onert_micro::import::KernelCustomConfigureRegistry::KernelCustomConfigureRegistry ( )
inlineconstexpr

Definition at line 91 of file OMKernelConfigureBuilder.h.

91 : _operator_configure()
92 {
93#define REGISTER_CUSTOM_KERNEL(name, string_name) \
94 registerKernelConfigure(core::OMBuilderID::CUSTOM_##name, configure_kernel_Circle##name);
95
96#include "CustomKernelsToBuild.lst"
97
98#undef REGISTER_CUSTOM_KERNEL
99 }

Member Function Documentation

◆ getKernelConfigureFunc()

OMStatus onert_micro::import::KernelCustomConfigureRegistry::getKernelConfigureFunc ( core::OMBuilderID  builderID,
KernelConfigureFunc **  configure_func 
) const
inline

Definition at line 102 of file OMKernelConfigureBuilder.h.

104 {
105 auto builder_id_opcode = size_t(builderID);
106 if (builder_id_opcode >= size_t(core::OMBuilderID::Size))
107 {
108 std::cerr << "Error: Unknown custom operator ID " << builder_id_opcode << std::endl;
109 *configure_func = nullptr;
110 OM_LOG_AND_RETURN(UnknownError, "Unknown error encountered");
111 }
112 const auto builder_id_offset = size_t(core::OMBuilderID::BuiltinOperatorsSize);
113 builder_id_opcode -= builder_id_offset - 1;
114
115 *configure_func = _operator_configure[builder_id_opcode];
116 return Ok;
117 }
#define OM_LOG_AND_RETURN(err, msg)
Definition OMLog.h:31

References onert_micro::core::BuiltinOperatorsSize, onert_micro::Ok, OM_LOG_AND_RETURN, onert_micro::core::Size, and onert_micro::UnknownError.

Referenced by onert_micro::import::OMKernelConfiguration::configureKernels().


The documentation for this class was generated from the following file: