ADTF
Loading...
Searching...
No Matches
plugin_intf.h
Go to the documentation of this file.
1
7
8#ifndef _ADTF_UCOM_ANT_PLUGIN_INTERFACE_INCLUDES_HEADER_
9#define _ADTF_UCOM_ANT_PLUGIN_INTERFACE_INCLUDES_HEADER_
10
11namespace adtf
12{
13namespace ucom
14{
15namespace ant
16{
17
18class IRuntime;
19class IClassFactory;
20
26class DOEXPORT IPlugin : public IObject
27{
28public:
33 ADTF_IID(IPlugin, "plugin.ant.ucom.adtf.iid");
34
35public:
37 enum class tPluginState: uint32_t
38 {
39 Deinitialized = 0,
40 Initialized = 1,
41 };
42
44 enum class tPluginBuildType : uint32_t
45 {
46 Release = 0,
47 Debug = 1
48 };
49
50public:
55 virtual const char* GetLabel() const = 0;
56
61 virtual iterator_adapter<const tNamedVersion,
63
68 virtual uint32_t GetBuildType() const = 0;
74 virtual tResult SetState(tPluginState eState) = 0;
75
82 virtual tPluginState GetState() const = 0;
83
93 virtual tResult GetClassFactory(iobject_ptr<const IClassFactory>& pClassFactory) const = 0;
94
99 virtual void SetHandle(tHandle hModule) = 0;
100
110 virtual tHandle GetHandle() const = 0;
111
112
113
114protected:
116 ~IPlugin() = default;
117};
118
119}//namespace ant
120
122using ant::IPlugin;
123
124}//namespace ucom
125}//namespace adtf
126
127#endif //_ADTF_UCOM_ANT_PLUGIN_INTERFACE_INCLUDES_HEADER_
A_UTILS_NS::cResult tResult
For backwards compatibility and to bring latest version into scope.
Definition result.h:736
Definition class_factory_intf.h:24
Definition object_intf.h:33
Definition plugin_intf.h:27
virtual void SetHandle(tHandle hModule)=0
virtual tResult GetClassFactory(iobject_ptr< const IClassFactory > &pClassFactory) const =0
virtual iterator_adapter< const tNamedVersion, pointer_iterator > GetVersions() const =0
tPluginBuildType
lists the several types of plugin states
Definition plugin_intf.h:45
virtual const char * GetLabel() const =0
virtual tResult SetState(tPluginState eState)=0
~IPlugin()=default
Protected destructor --> Only the final implementation can be destroyed!
virtual tHandle GetHandle() const =0
virtual tPluginState GetState() const =0
virtual uint32_t GetBuildType() const =0
tPluginState
lists the several types of plugin states
Definition plugin_intf.h:38
ADTF_IID(IPlugin, "plugin.ant.ucom.adtf.iid")
Definition runtime_intf.h:104
Base object pointer to realize binary compatible reference counting in interface methods.
Definition object_ptr_intf.h:112
Namespace for all functionality of the ADTF UCOM SDK provided since v3.0.
Definition test_runtime.h:14
Namespace for the ADTF uCOM SDK.
Definition adtf_system.h:324
Namespace for all functionality provided by ADTF and its SDKs.
Definition adtf_client_connector.h:14
Adapter for begin and end iterators - usable as return and parameter value in interfaces.
Definition iterator_intf.h:190
Empty struct template to specialize implementations of iterator interfaces.
Definition iterator_intf.h:28
Named version information consisting of the modules name and its adtf_util::tVersion.
Definition class_info_intf.h:22