8#include "Arp/System/Core/event.hxx" 
    9#include "Arp/Plc/Commons/Esm/IProgramProvider.hpp" 
   12namespace Arp { 
namespace Plc { 
namespace Commons { 
namespace Esm
 
   18    using Programs = std::map<String, IProgram::Ptr>;   
 
   21    using ProgramTypes = std::map<String, String>;   
 
   38    Programs&       GetPrograms(
void);
 
   39    const Programs& GetPrograms(
void)
const;
 
   42    bool            RemoveProgram(
IProgram& program);
 
   46    void            Reset(
void)
override;
 
   57    ProgramTypes    programTypes;
 
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
 
Use this class to register and invoke several delegates (function pointer in OOP design).
Definition: event.hxx:32
 
Interface to realizes an program provider.
Definition: IProgramProvider.hpp:17
 
Interface to implement PLC program to be executed in realtime context.
Definition: IProgram.hpp:19
 
std::shared_ptr< IProgram > Ptr
Shared pointer type of IProgram.
Definition: IProgram.hpp:22
 
Definition: ProgramProviderBase.hpp:16
 
~ProgramProviderBase(void)=default
Destructs this instance and frees all resources.
 
IProgram::Ptr CreateProgram(const String &programName, const String &programType) override
Creates an instance of an program type.
Definition: ProgramProviderBase.cpp:12
 
ProgramProviderBase(const ProgramProviderBase &arg)=default
Copy constructor.
 
ProgramProviderBase(void)=default
Constructs an ProgramProviderBase instance.
 
ProgramProviderBase & operator=(const ProgramProviderBase &arg)=default
Assignment operator.
 
void Reset(void) override
Resets the program provider.
Definition: ProgramProviderBase.cpp:56
 
Root namespace for the PLCnext API