ImFusion SDK 4.3
EngineConfiguration Class Reference
+ Inheritance diagram for EngineConfiguration:

Public Member Functions

void configure (const Properties *fromProperties) override
 Configures the EngineConfiguration from a Properties object throws a ParamException if the properties are not valid.
 
void configuration (Properties *toProperties) const override
 Returns the EngineConfiguration parameters as a Properties object.
 
Properties toProperties () const
 Convenience functions.
 
const std::stringlogDomain () const
 
const std::stringoriginalModelPath () const
 
- Public Member Functions inherited from Configurable
virtual void configureDefaults ()
 Retrieve the properties of this object, replaces values with their defaults and sets it again.
 
void registerParameter (ParameterBase *param)
 Register the given Parameter or SubProperty, so that it will be configured during configure()/configuration().
 
void unregisterParameter (const ParameterBase *param)
 Remove the given Parameter or SubProperty from the list of registered parameters.
 
 Configurable (const Configurable &rhs)
 
 Configurable (Configurable &&rhs) noexcept
 
Configurableoperator= (const Configurable &)
 
Configurableoperator= (Configurable &&) noexcept
 

Public Attributes

EngineParameter< std::stringp_name = {"Name", "", this, ParamRequired::No}
 Type of the engine, i.e.
 
EngineParameter< std::stringp_modelFile = {"ModelFile", "", this, ParamRequired::Yes}
 Model file, serialized by the specific framework.
 
EngineParameter< bool > p_forceCPU = {"ForceCPU", false, this, ParamRequired::No}
 Whether to force run on CPU even if GPU is present.
 
EngineParameter< std::vector< std::string > > p_inputFields
 Input field names expected by the model run by the engine.
 
EngineParameter< std::vector< std::string > > p_outputFields
 Output field names returned by the model run by the engine.
 
EngineParameter< std::vector< std::string > > p_outputFieldsToIgnore
 Output field names returned by the model run by the engine.
 
EngineParameter< std::stringp_version = {"Version", "", this, ParamRequired::No, "EngineVersion"}
 Version of the engine used to train and save the model.
 
EngineParameter< bool > p_verbose = {"Verbose", false, this, ParamRequired::No}
 Whether the engine should print a lot of debug information.
 
Properties p_engineSpecificParameters
 Parameters that are specific to each engine.
 
EngineParameter< std::stringp_yamlConfigPath = {"YamlConfigPath", "", this, ParamRequired::No}
 This is used to determine the path (relative/absolute/resource) of the model file The way to set it is to attach it to the Properties.
 
- Public Attributes inherited from Configurable
Signal signalParametersChanged
 Emitted whenever one of the registered Parameters' or SubPropertys' signalValueChanged signal was emitted.
 

Static Public Attributes

static const std::string p_defaultInputName
 
static const std::string p_defaultOutputName
 

Additional Inherited Members

- Protected Attributes inherited from Configurable
std::vector< Paramm_params
 List of all registered Parameter and SubProperty instances.
 

Member Function Documentation

◆ configure()

void configure ( const Properties * fromProperties)
overridevirtual

Configures the EngineConfiguration from a Properties object throws a ParamException if the properties are not valid.

Reimplemented from Configurable.

◆ configuration()

void configuration ( Properties * toProperties) const
overridevirtual

Returns the EngineConfiguration parameters as a Properties object.

Reimplemented from Configurable.

Member Data Documentation

◆ p_name

EngineParameter<std::string> p_name = {"Name", "", this, ParamRequired::No}

Type of the engine, i.e.

"torch", "onnx", "openvino", "tensorrt", ... This string corresponds to the factory name of the specific Engine

◆ p_inputFields

Initial value:
= {"InputFields",
std::vector<std::string>{p_defaultInputName},
this,
ParamRequired::No,
"EngineInputFields"}

Input field names expected by the model run by the engine.

◆ p_outputFields

Initial value:
= {"OutputFields",
std::vector<std::string>{p_defaultOutputName},
this,
ParamRequired::No,
"EngineOutputFields"}

Output field names returned by the model run by the engine.

◆ p_outputFieldsToIgnore

EngineParameter<std::vector<std::string> > p_outputFieldsToIgnore
Initial value:
= {"OutputFieldsToIgnore",
this,
ParamRequired::No,
"EngineOutputFieldsToIgnore"}

Output field names returned by the model run by the engine.

◆ p_engineSpecificParameters

Properties p_engineSpecificParameters

Parameters that are specific to each engine.

These parameters are simply collected from the model yaml configuration and passed over to the selected engine, which is responsible for defining, parsing and using them Example: TorchLibVersion, specific to the torch engine.

◆ p_yamlConfigPath

EngineParameter<std::string> p_yamlConfigPath = {"YamlConfigPath", "", this, ParamRequired::No}

This is used to determine the path (relative/absolute/resource) of the model file The way to set it is to attach it to the Properties.

This is done by the ModelConfiguration. Note that this paramater must be there, otherwise the model file resolution doesn't work.


The documentation for this class was generated from the following file:
Search Tab / S to search, Esc to close