Sound Open Firmware
Loading...
Searching...
No Matches
intel_adsp::ProcessingModuleFactoryInterface Class Referenceabstract

The ProcessingModuleFactoryInterface class defines requirements for creating a processing module controllable by the ADSP System. More...

#include <processing_module_factory_interface.h>

Data Structures

struct  ErrorCode
 Scoped enumeration of error code value which can be reported by a ProcessingModuleFactoryInterface object. More...

Public Member Functions

virtual void GetPrerequisites (ProcessingModulePrerequisites &module_prereqs)=0
 Indicates the prerequisites for module instance creation.
virtual ErrorCode::Type Create (SystemAgentInterface &system_agent, ModulePlaceholder *module_placeholder, ModuleInitialSettings initial_settings, IoPinsInfo &pins_info)=0
 Creates a ProcessingModuleInstance instance in the given placeholder.

Detailed Description

The ProcessingModuleFactoryInterface class defines requirements for creating a processing module controllable by the ADSP System.

Member Function Documentation

◆ Create()

virtual ErrorCode::Type intel_adsp::ProcessingModuleFactoryInterface::Create ( SystemAgentInterface & system_agent,
ModulePlaceholder * module_placeholder,
ModuleInitialSettings initial_settings,
IoPinsInfo & pins_info )
pure virtual

Creates a ProcessingModuleInstance instance in the given placeholder.

The custom implementation of the Create method is expected to handle initialization of the custom module instances.

Note
The ADSP System will provide a dedicated memory placeholder for every module instance to create.
Parameters
[in]system_agentthe SystemAgentInterface object which can register the module instance which is being initialized
[in]module_placeholderthe pointer to the memory location where the module instance can be initialized using the "new placement syntax". Note that the size of the placeholder given by the System is worth the size of the processing module class given as parameter of the DECLARE_LOADABLE_MODULE macro
[in]initial_settingsinitial settings for module startup.
[out]pins_infowill report the IoPinsInfo data that ADSP System requires to bind the input and output streams to the module.
Returns
some ErrorCode value upon creation status.

◆ GetPrerequisites()

virtual void intel_adsp::ProcessingModuleFactoryInterface::GetPrerequisites ( ProcessingModulePrerequisites & module_prereqs)
pure virtual

Indicates the prerequisites for module instance creation.

ADSP System calls this method before each module instance creation.

Parameters
[out]module_prereqsreports module prerequisites that ADSP System needs to prepare the module creation.

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