nx_metadata_sdk 1.0 Metadata SDK

Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
nx::sdk::analytics::IPlugin Class Referenceabstract

`#include <i_plugin.h>`

Inheritance diagram for nx::sdk::analytics::IPlugin:

## Public Member Functions
Result< const IString * > | manifest () const
Result< IEngine * > | createEngine ()
Public Member Functions inherited from nx::sdk::Interface< IPlugin, nx::sdk::IPlugin0 >
virtual IRefCountable * | queryInterface (const InterfaceId *id)
Ptr< Interface > | queryInterface ()
Ptr< const Interface > | queryInterface () const
Public Member Functions inherited from nx::sdk::IPlugin
virtual void | setUtilityProvider (IUtilityProvider *utilityProvider)=0
Public Member Functions inherited from nx::sdk::Interface< IPlugin >
virtual IRefCountable * | queryInterface (const InterfaceId *id)
Ptr< Interface > | queryInterface ()
Ptr< const Interface > | queryInterface () const
Public Member Functions inherited from nx::sdk::IRefCountable
virtual | ~IRefCountable ()=default
template<class Interface >
Ptr< Interface > | queryInterface ()
template<class Interface >
Ptr< const Interface > | queryInterface () const
virtual int | addRef () const =0
virtual int | releaseRef () const =0
int | refCountThreadUnsafe () const

## Static Public Member Functions
static auto | interfaceId ()
Static Public Member Functions inherited from nx::sdk::IPlugin
static auto | interfaceId ()
Static Public Member Functions inherited from nx::sdk::IRefCountable
static auto | interfaceId ()

## Protected Member Functions
virtual void | getManifest (Result< const IString *> *outResult) const =0
virtual void | doCreateEngine (Result< IEngine *> *outResult)=0
Protected Member Functions inherited from nx::sdk::Interface< IPlugin, nx::sdk::IPlugin0 >
virtual IRefCountable * | queryInterface (const IRefCountable::InterfaceId *id) override
IRefCountable * | queryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId)
Protected Member Functions inherited from nx::sdk::Interface< IPlugin >
IRefCountable * | queryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId)

## Additional Inherited Members
Public Types inherited from nx::sdk::IPlugin
typedef IPlugin *(* | EntryPointFunc) ()
typedef IPlugin *(* | MultiEntryPointFunc) (int instanceIndex)
Static Public Attributes inherited from nx::sdk::IPlugin
static constexpr const char * | kEntryPointFuncName = "createNxPlugin"
static constexpr const char * | kMultiEntryPointFuncName = "createNxPluginByIndex"
Static Protected Member Functions inherited from nx::sdk::IRefCountable
template<int len>
static constexpr const InterfaceId * | makeId (const char(&charArray)[len])
template<class TemplateInstance , class TemplateArg , int len>
static const InterfaceId * | makeIdForTemplate (const char(&baseIdCharArray)[len])

## Detailed Description

The main interface for an Analytics Plugin instance.

## Member Function Documentation

## ◆ createEngine()

Result<IEngine*> nx::sdk::analytics::IPlugin::createEngine | ( |  | ) |
| inline

Creates a new instance of Analytics Engine.

Returns
  Pointer to an object that implements the IEngine interface.

## ◆ doCreateEngine()

virtual void nx::sdk::analytics::IPlugin::doCreateEngine | ( | Result< IEngine *> * | outResult | ) |
| protected pure virtual

Called by createEngine()

## ◆ getManifest()

virtual void nx::sdk::analytics::IPlugin::getManifest | ( | Result< const IString *> * | outResult | ) | const
| protected pure virtual

Called by manifest()

## ◆ manifest()

Result<const IString*> nx::sdk::analytics::IPlugin::manifest | ( |  | ) | const
| inline

Provides Plugin Manifest in JSON format.

See the manifest specification in Analytics Plugin Manifests.

Returns
  JSON string in UTF-8.

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

- src/nx/sdk/analytics/i_plugin.h