-
Notifications
You must be signed in to change notification settings - Fork 3
API: ObCreateInterface
Creates a global interface object for use by other modules.
AurieStatus ObCreateInterface(
[in] AurieModule* Module,
[in] AurieInterfaceBase* Interface,
[in] const char* InterfaceName
);
The owner module of this interface. The interface is destroyed when this module unloads.
A pointer to a persistent instance of an interface inheriting from AurieInterfaceBase
.
This interface must have at least the Create
, Destroy
, and QueryVersion
methods defined.
On initialization, the Create
method of this interface is invoked. If the interface fails to initialize, the function fails. If the function fails, the interface is not added to the global registry.
A unique name for the interface. Other modules can use this name to get a handle to the interface. This name is case-insensitive.
The function returns AURIE_SUCCESS
on success, otherwise returns a matching error code. If the interface already exists, the function returns AURIE_OBJECT_ALREADY_EXISTS
. If the interface's Create
function failed, the function returns an interface-specific error code.