Sound Open Firmware
Loading...
Searching...
No Matches
system_agent_interface.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-3-Clause
2 *
3 * Copyright(c) 2022 Intel Corporation. All rights reserved.
4 */
6
7#ifndef _ADSP_SYSTEM_AGENT_INTERFACE_H_
8#define _ADSP_SYSTEM_AGENT_INTERFACE_H_
9
10#include "system_service.h"
11#include "system_error.h"
12
13#include <stdint.h>
14#include <stddef.h>
15
16namespace intel_adsp
17{
18 struct ModulePlaceholder;
24 struct IoPinsInfo;
25 class ModuleHandle;
26 struct LogHandle;
27
28namespace internal
29{
30 class Endpoint;
31} /* namespace internal */
32
43 {
44 public:
70
76 virtual void CheckIn(ProcessingModuleInterface & processing_module,
80 ModuleHandle & module_handle,
84 LogHandle * &log_handle
85 ) = 0;
86
92 virtual int CheckIn(ProcessingModuleFactoryInterface & module_factory,
94 ModulePlaceholder * module_placeholder,
98 size_t,
99 uint32_t,
100 const void*,
101 void*,
102 void**) = 0;
103
107 virtual SystemService const &GetSystemService(void) = 0;
108
112 virtual LogHandle const &GetLogHandle(void) = 0;
113 };
114
116 {
117 public:
118
124 virtual void CheckInDetector(DetectorModuleInterface & processing_module,
128 ModuleHandle & module_handle,
132 LogHandle * &log_handle
134 ) = 0;
135 };
136
137} /* namespace intel_adsp */
138
139#endif /* _ADSP_SYSTEM_AGENT_H_ */
Definition processing_module_interface.h:381
The set of settings item given for initialization of a Module instance.
Definition module_initial_settings.h:74
The ProcessingModuleFactoryInterface class defines requirements for creating a processing module cont...
Definition processing_module_factory_interface.h:74
The ProcessingModuleInterface class defines the interface that user-defined module shall comply with ...
Definition processing_module_interface.h:165
Definition system_agent_interface.h:116
virtual void CheckInDetector(DetectorModuleInterface &processing_module, ModuleHandle &module_handle, LogHandle *&log_handle)=0
Allows a ProcessingModuleInterface instance to be registered in the ADSP System as detector module.
The SystemAgentInterface is a mediator to allow loadable module to interact with the ADSP System.
Definition system_agent_interface.h:43
virtual int CheckIn(ProcessingModuleFactoryInterface &module_factory, ModulePlaceholder *module_placeholder, size_t, uint32_t, const void *, void *, void **)=0
Allows a ProcessingModuleFactoryInterface instance to be registered in the ADSP System.
virtual void CheckIn(ProcessingModuleInterface &processing_module, ModuleHandle &module_handle, LogHandle *&log_handle)=0
Allows a ProcessingModuleInterface instance to be registered in the ADSP System.
virtual SystemService const & GetSystemService(void)=0
Gets the SystemService instance which contains all the service functions.
virtual LogHandle const & GetLogHandle(void)=0
Gets the LogHandle required to send some log message.
Definition system_agent_interface.h:29
Definition fixed_array.h:13
Scoped enumeration of common error code values which can be reported to ADSP System.
Definition system_error.h:18
static Enum const MaxValue
Indicates the maximal value in the enumeration list.
Definition system_error.h:33
int Type
type of the error code value
Definition system_error.h:20
holds information about pins of a module.
Definition processing_module_factory_interface.h:39
Descriptor on prerequisites for ProcessingModuleInterface instance creation.
Definition processing_module_prerequisites.h:107
static Enum const MaxValue
Indicates the maximal value of the enumeration.
Definition system_agent_interface.h:61
static Enum const MinValue
Indicates the minimal value of the enumeration.
Definition system_agent_interface.h:59
ErrorCode(Type value)
Initializes a new instance of ErrorCode given a value.
Definition system_agent_interface.h:66
Enum
list of named error codes specific to the SystemAgentInterface
Definition system_agent_interface.h:52
@ MODULE_CREATION_FAILURE
Definition system_agent_interface.h:56
char value[]
Definition tlv.h:2