ONE - On-device Neural Engine
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
mir_onnx::ModelContext Class Reference

#include <ONNXNodeConverterRegistry.h>

Public Member Functions

 ModelContext (const onnx::ModelProto *model)
 
void setDomainOpsetVersion (const std::string &domain, const int64_t opset_version)
 
int64_t getDomainOpsetVersion (const std::string &domain) const
 

Detailed Description

Definition at line 30 of file ONNXNodeConverterRegistry.h.

Constructor & Destructor Documentation

◆ ModelContext()

mir_onnx::ModelContext::ModelContext ( const onnx::ModelProto *  model)
explicit

Definition at line 37 of file ONNXNodeConverterRegistry.cpp.

38{
39 if (model == nullptr)
40 {
41 throw std::runtime_error{"Model should be imported before importer prepare"};
42 }
43
44 if (model->ir_version() > onnx::IR_VERSION)
45 {
46 throw std::runtime_error("IR version " + std::to_string(model->ir_version()) +
47 " is not supported yet.");
48 }
49
50 // Set Opset Version for each domain
51 for (const auto &op_set : model->opset_import())
52 {
53 setDomainOpsetVersion(op_set.domain(), op_set.version());
54 }
55}
void setDomainOpsetVersion(const std::string &domain, const int64_t opset_version)

References setDomainOpsetVersion().

Member Function Documentation

◆ getDomainOpsetVersion()

int64_t mir_onnx::ModelContext::getDomainOpsetVersion ( const std::string &  domain) const

Definition at line 29 of file ONNXNodeConverterRegistry.cpp.

30{
31 auto iter = _domainToOpsetVersion.find(domain);
32 if (iter == _domainToOpsetVersion.end())
33 throw std::runtime_error("Didn't have domain " + domain + "!");
34 return iter->second;
35}

◆ setDomainOpsetVersion()

void mir_onnx::ModelContext::setDomainOpsetVersion ( const std::string &  domain,
const int64_t  opset_version 
)

Definition at line 24 of file ONNXNodeConverterRegistry.cpp.

25{
26 _domainToOpsetVersion.emplace(domain, opset_version);
27}

Referenced by ModelContext().


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