PLCnext API Documentation  22.9.0.33
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
Arp::Plc::Commons::Esm::ProgramProviderBase Class Referenceabstract
Inheritance diagram for Arp::Plc::Commons::Esm::ProgramProviderBase:
Inheritance graph

Public Types

using Programs = std::map< String, IProgram::Ptr >
 

Public Member Functions

 ProgramProviderBase (void)=default
 Constructs an ProgramProviderBase instance. More...
 
 ProgramProviderBase (const ProgramProviderBase &arg)=default
 Copy constructor. More...
 
ProgramProviderBaseoperator= (const ProgramProviderBase &arg)=default
 Assignment operator. More...
 
 ~ProgramProviderBase (void)=default
 Destructs this instance and frees all resources. More...
 
Programs & GetPrograms (void)
 
const Programs & GetPrograms (void) const
 
bool RemoveProgram (IProgram &program)
 
IProgram::Ptr CreateProgram (const String &programName, const String &programType) override
 Creates an instance of an program type. More...
 
void Reset (void) override
 Resets the program provider. More...
 
- Public Member Functions inherited from Arp::Plc::Commons::Esm::IProgramProvider
 IProgramProvider (void)=default
 Constructs an IProgram instance. More...
 
virtual ~IProgramProvider (void)=default
 Destructs this instance and frees all resouces. More...
 

Public Attributes

event< IProgram::PtrProgramAdded
 
event< IProgram::PtrProgramRemoved
 

Protected Member Functions

virtual IProgram::Ptr CreateProgramInternal (const String &programName, const String &programType)=0
 

Constructor & Destructor Documentation

◆ ProgramProviderBase() [1/2]

Arp::Plc::Commons::Esm::ProgramProviderBase::ProgramProviderBase ( void  )
default

Constructs an ProgramProviderBase instance.

◆ ProgramProviderBase() [2/2]

Arp::Plc::Commons::Esm::ProgramProviderBase::ProgramProviderBase ( const ProgramProviderBase arg)
default

Copy constructor.

◆ ~ProgramProviderBase()

Arp::Plc::Commons::Esm::ProgramProviderBase::~ProgramProviderBase ( void  )
default

Destructs this instance and frees all resources.

Member Function Documentation

◆ CreateProgram()

IProgram::Ptr Arp::Plc::Commons::Esm::ProgramProviderBase::CreateProgram ( const String programName,
const String programType 
)
overridevirtual

Creates an instance of an program type.

Parameters
programNameThe name of the to creating program instance.
programTypeThe program type of the to creating program instance.
Returns
The instance of the created program.

Implements Arp::Plc::Commons::Esm::IProgramProvider.

◆ operator=()

ProgramProviderBase& Arp::Plc::Commons::Esm::ProgramProviderBase::operator= ( const ProgramProviderBase arg)
default

Assignment operator.

◆ Reset()

void Arp::Plc::Commons::Esm::ProgramProviderBase::Reset ( void  )
overridevirtual

Resets the program provider.

Implements Arp::Plc::Commons::Esm::IProgramProvider.


The documentation for this class was generated from the following file: