7#ifndef ARP_USE_ARP_SYSTEM_ACF_COMMONS
8#include "Arp/Base/Acf/Commons/ILibrary.hpp"
15#include "Arp/System/Core/AppDomain.hpp"
16#include "Arp/System/Core/ArpVersion.hpp"
18namespace Arp {
namespace System {
namespace Acf
22class IComponentFactory;
41 typedef ILibrary& (*MainEntry)(AppDomain& appDomain);
46 typedef void (*Main)(AppDomain& appDomain);
Any Acf Library shall implement this interface.
Definition: ILibrary.hpp:20
virtual ~ILibrary(void)=default
The virtual default destructor.
ILibrary & operator=(ILibrary &&arg) noexcept=default
The move assignment operator.
virtual const ArpVersion & GetBuildVersion(void) const =0
Gets the version of the firmware or SDK which was used to build the shared library.
ILibrary(void)=default
The default constructor.
virtual IComponentFactory & GetComponentFactory(void)=0
Gets the component factory of this library to create instances of its provided components.
This is the namespace of the Application Component Framework.
Definition: ComponentBase.hpp:72
Root namespace for the PLCnext API