|
nx_metadata_sdk
1.0
Metadata SDK
|
#include <plugin.h>
Public Types | |
| using | CreateEngine = std::function< IEngine *(Plugin *plugin)> |
Public Types inherited from nx::sdk::IPlugin | |
| typedef IPlugin *(* | EntryPointFunc) () |
| typedef IPlugin *(* | MultiEntryPointFunc) (int instanceIndex) |
Public Member Functions | |
| Plugin (std::string pluginManifest, CreateEngine createEngine) | |
| Ptr< IUtilityProvider > | utilityProvider () const |
| virtual std::string | instanceId () const |
| virtual void | setUtilityProvider (IUtilityProvider *utilityProvider) override |
Public Member Functions inherited from nx::sdk::RefCountable< IPlugin > | |
| RefCountable (const RefCountable &)=delete | |
| RefCountable (RefCountable &&)=delete | |
| RefCountable & | operator= (const RefCountable &)=delete |
| RefCountable & | operator= (RefCountable &&)=delete |
| virtual int | addRef () const override |
| virtual int | releaseRef () const override |
| int | refCount () const |
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 |
| int | refCountThreadUnsafe () const |
Protected Member Functions | |
| virtual Result< IEngine * > | doObtainEngine () |
| virtual std::string | manifestString () const |
| virtual void | getManifest (Result< const IString *> *outResult) const override |
| virtual void | doCreateEngine (Result< IEngine *> *outResult) override |
Protected Member Functions inherited from nx::sdk::Interface< IPlugin > | |
| virtual IRefCountable * | queryInterface (const IRefCountable::InterfaceId *id) override |
| IRefCountable * | queryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId) |
Additional Inherited Members | |
Static Public Member Functions inherited from nx::sdk::IPlugin | |
| static auto | interfaceId () |
Static Public Member Functions inherited from nx::sdk::IRefCountable | |
| static auto | interfaceId () |
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 const InterfaceId * | makeId (const char(&charArray)[len]) |
| template<int len, int alternativeLen> | |
| static std::vector< const InterfaceId * > | makeIdWithAlternative (const char(&charArray)[len], const char(&alternativeCharArray)[alternativeLen]) |
| template<class TemplateInstance , class TemplateArg , int len> | |
| static const InterfaceId * | makeIdForTemplate (const char(&baseIdCharArray)[len]) |
| static std::vector< const InterfaceId * > | alternativeInterfaceIds (const InterfaceId *id) |
| static std::vector< const InterfaceId * > | alternativeInterfaceIds (std::vector< const InterfaceId *> ids) |
Base class for a typical implementation of an Analytics Plugin. Hides many technical details of the Analytics Plugin SDK, but may limit plugin capabilities - use only when suitable.
| nx::sdk::analytics::Plugin::Plugin | ( | std::string | pluginManifest, |
| CreateEngine | createEngine | ||
| ) |
Allows to use this class directly without inhering it.
Override this method instead of doCreateEngine().
Reimplemented in nx::vms_server_plugins::analytics::stub::custom_metadata::Plugin, nx::vms_server_plugins::analytics::stub::diagnostic_events::Plugin, nx::vms_server_plugins::analytics::stub::events::Plugin, nx::vms_server_plugins::analytics::stub::motion_metadata::Plugin, nx::vms_server_plugins::analytics::stub::roi::Plugin, nx::vms_server_plugins::analytics::stub::sdk_features::Plugin, nx::vms_server_plugins::analytics::stub::settings::Plugin, nx::vms_server_plugins::analytics::stub::special_objects::Plugin, nx::vms_server_plugins::analytics::stub::video_frames::Plugin, nx::vms_server_plugins::analytics::stub::best_shots::Plugin, nx::vms_server_plugins::analytics::stub::object_actions::Plugin, nx::vms_server_plugins::analytics::stub::object_detection::Plugin, nx::vms_server_plugins::analytics::stub::object_streamer::Plugin, nx::vms_server_plugins::analytics::stub::taxonomy_features::Plugin, nx::vms_server_plugins::analytics::sample::Plugin, and nx::vms_server_plugins::analytics::stub::http_requests::Plugin.
|
inlinevirtual |
Override for multi-IPlugin libraries; provide pluginId specified in the Manifest.
Reimplemented in nx::vms_server_plugins::analytics::stub::custom_metadata::Plugin, nx::vms_server_plugins::analytics::stub::diagnostic_events::Plugin, nx::vms_server_plugins::analytics::stub::events::Plugin, nx::vms_server_plugins::analytics::stub::motion_metadata::Plugin, nx::vms_server_plugins::analytics::stub::roi::Plugin, nx::vms_server_plugins::analytics::stub::sdk_features::Plugin, nx::vms_server_plugins::analytics::stub::settings::Plugin, nx::vms_server_plugins::analytics::stub::special_objects::Plugin, nx::vms_server_plugins::analytics::stub::video_frames::Plugin, and nx::vms_server_plugins::analytics::stub::taxonomy_features::Plugin.
|
overridevirtual |
Provides an object which the plugin can use for calling back to access some data and functionality provided by the process that uses the plugin.
For details, see the documentation for IUtilityProvider.
Implements nx::sdk::IPlugin.
1.8.14