8 #include "Arp/Plc/Commons/Esm/IProgram.hpp"
9 namespace Arp {
namespace Plc {
namespace Commons {
namespace Esm
54 bool abortRequested =
false;
60 : programName(programNameArg)
66 return this->programName;
77 return this->taskName;
82 this->taskName = value;
87 this->abortRequested =
true;
92 return this->abortRequested;
Interface to implement PLC program to be executed in realtime context.
Definition: IProgram.hpp:19
This class implements the base functionality of a program.
Definition: ProgramBase.hpp:15
void SetTaskName(const String &taskNameArg) override
Set the task name in which is this program will be executed.
Definition: ProgramBase.hpp:80
bool IsAbortRequested(void) const override
Determines if this program is requested to abort.
Definition: ProgramBase.hpp:90
virtual void Execute(void)=0
Executes this program.
virtual ~ProgramBase(void)=default
Destructs this instance and frees all resouces.
ProgramBase(const String &programName)
Constructs an ProgramBase instance.
Definition: ProgramBase.hpp:59
const String & GetFullName(void) const override
Returns the program name with full namespace.
Definition: ProgramBase.hpp:64
void AbortRequest(void) override
Request a abort of program execution.
Definition: ProgramBase.hpp:85
const String & GetTaskName(void) const override
Returns the task name in which is this program will be executed.
Definition: ProgramBase.hpp:75
void SetInitialValues(void) override
Set the initial values of all containing variables of this program.
Definition: ProgramBase.hpp:69
Root namespace for the PLCnext API