PLCnext API Documentation 25.0.2.69
|
Any Acf Library shall implement this interface. More...
#include <ILibrary.hpp>
Public Types | |
using | MainEntry = ILibrary &(*)(void) |
This is the prototype of the main entry point of any Arp library which shall be loaded dynamically by the Acf. More... | |
Public Member Functions | |
ILibrary (void)=default | |
The default constructor. | |
ILibrary (ILibrary &&arg) noexcept=default | |
The move constructor. More... | |
ILibrary (const ILibrary &arg)=delete | |
The copy constructor is deleted. More... | |
ILibrary & | operator= (ILibrary &&arg) noexcept=default |
The move assignment operator. More... | |
ILibrary & | operator= (const ILibrary &arg)=delete |
The copy assignment operator is deleted. More... | |
virtual | ~ILibrary (void)=default |
The virtual default destructor. | |
virtual void | Initialize (void)=0 |
Initializes this library. More... | |
virtual void | Dispose (void)=0 |
Disposes this library. More... | |
virtual IComponentFactory & | GetComponentFactory (void)=0 |
Gets the component factory of this library to create instances of its provided components. More... | |
virtual const ArpVersion & | GetBuildVersion (void) const =0 |
Gets the version of the firmware or SDK which was used to build the shared library. More... | |
virtual const ArpVersion & | GetLibraryVersion (void) const =0 |
Gets the version of the library provided by its author. More... | |
virtual String | GetLibraryInfoItem (LibraryInfoKind kind) const =0 |
Gets additional information about the library More... | |
Any Acf Library shall implement this interface.
Any dynamic shared library which might be loaded by the Acf infrastructure must provide a library instance implementing this interface, which serves as entry point to the shared library code.
using Arp::Base::Acf::Commons::ILibrary::MainEntry = ILibrary & (*)(void) |
This is the prototype of the main entry point of any Arp library which shall be loaded dynamically by the Acf.
Any Acf library must export a function called ArpDynamicLibraryMain
matching this prototype, which is declared as extern "C"
to avoid name mangling through the compiler.
|
defaultnoexcept |
The move constructor.
arg | The argument to move. |
|
delete |
The copy constructor is deleted.
arg | The argument to copy. |
|
pure virtual |
Disposes this library.
This operation is called before unloading the library by Acf. Implement this operation if special tasks are required before the shared library is unloaded.
Implemented in Arp::Base::Acf::Commons::LibraryBase.
|
pure virtual |
Gets the version of the firmware or SDK which was used to build the shared library.
Implemented in Arp::Base::Acf::Commons::LibraryBase.
|
pure virtual |
Gets the component factory of this library to create instances of its provided components.
Any dynamic shared library has a component factory to create component instances dynamically which are configured through Acf configuration.
Implemented in Arp::Base::Acf::Commons::LibraryBase.
|
pure virtual |
Gets additional information about the library
kind | Kind of information to get |
Implemented in Arp::Base::Acf::Commons::LibraryBase.
|
pure virtual |
Gets the version of the library provided by its author.
Implemented in Arp::Base::Acf::Commons::LibraryBase.
|
pure virtual |
Initializes this library.
This operation is called after loading the library by Acf. Implement this operation if special tasks are required when the shared library was loaded.
Implemented in Arp::Base::Acf::Commons::LibraryBase.
The copy assignment operator is deleted.
arg | The argument to copy. |
The move assignment operator.
arg | The argument to move. |