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:
nx::sdk::Interface< IPlugin, nx::sdk::IPlugin0 > nx::sdk::IPlugin nx::sdk::Interface< IPlugin > nx::sdk::IRefCountable

Public Member Functions

Result< const IString * > manifest () const
 
Result< IEngine * > createEngine ()
 
- Public Member Functions inherited from nx::sdk::Interface< IPlugin, nx::sdk::IPlugin0 >
virtual IRefCountablequeryInterface (const InterfaceId *id)
 
Ptr< InterfacequeryInterface ()
 
Ptr< const InterfacequeryInterface () 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 IRefCountablequeryInterface (const InterfaceId *id)
 
Ptr< InterfacequeryInterface ()
 
Ptr< const InterfacequeryInterface () const
 
- Public Member Functions inherited from nx::sdk::IRefCountable
virtual ~IRefCountable ()=default
 
template<class Interface >
Ptr< InterfacequeryInterface ()
 
template<class Interface >
Ptr< const InterfacequeryInterface () 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 IRefCountablequeryInterface (const IRefCountable::InterfaceId *id) override
 
IRefCountablequeryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId)
 
- Protected Member Functions inherited from nx::sdk::Interface< IPlugin >
IRefCountablequeryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId)
 

Additional Inherited Members

- Public Types inherited from nx::sdk::IPlugin
typedef IPlugin *(* EntryPointFunc) ()
 
- Static Public Attributes inherited from nx::sdk::IPlugin
static constexpr const char * kEntryPointFuncName = "createNxPlugin"
 
- Static Protected Member Functions inherited from nx::sdk::IRefCountable
template<int len>
static constexpr const InterfaceIdmakeId (const char(&charArray)[len])
 
template<class TemplateInstance , class TemplateArg , int len>
static const InterfaceIdmakeIdForTemplate (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)
protectedpure virtual

Called by createEngine()

◆ getManifest()

virtual void nx::sdk::analytics::IPlugin::getManifest ( Result< const IString *> *  outResult) const
protectedpure 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: