AAO DRAMA/DRAMA2 C++ Interface
DRAMA C++11 and later interface
Classes | Typedefs | Functions
drama::thread Namespace Reference

Detailed Description

This namespace is used for features which are particular to supporting C++11 thread based operations within DRAMA 2.

Classes

class  AccessDrama
 A class used by threads to access and enable the DRAMA context of an action or of a particular UFACE context. More...
 
class  KickNotifier
 An object used to obtain notifications of kicks. More...
 
class  Monitor
 An abstract class which implements a DRAMA Parameter monitor in a thread. More...
 
class  MonitorByType
 A class implementing Monitor which invokes particular methods for parameters of given base types. More...
 
class  MonitorMessageHandler
 Handle replies to DRAMA Monitor Messages. More...
 
class  MonitorToParam
 A class implementing Monitor which copies the value of a monitored parameter into one of the same name or a derived name in the current task. More...
 
class  ProcessInfo
 A class with information used by the TransEvtProcessor methods. More...
 
class  SignalBlocker
 Constructing an object of this type will block all blockable UNIX signals in the current thread. More...
 
class  TAction
 A class which implements a DRAMA Action with runs a thread. More...
 
class  TActionViaFunctor
 This class is used to creating TAction objects referring to functions. More...
 
class  TMessHandler
 This interface class must be implemented by classes which have threads waiting for messages. More...
 
class  TSdsListToUserObj
 Object used to print SDS objects using MessageUser from TMessHandler objects. More...
 
class  TUface
 A class which allows threads running in a User Interface or similar environments to send DRAMA messages. More...
 

Typedefs

using ThreadActionFunction = std::function< void(TAction *, const sds::Id &)>
 Type used for functions specified drama::Task::Add().
 

Functions

void RunProgram (TMessHandler *messHandler, const std::string &fileName, const std::string &arguments="", const std::string &node="", int priority=0, bool absPriority=false, bool setNames=true, unsigned stackBytes=0)
 Load and run a program using the DRAMA loading mechanisms.
 
bool RunProgramWaitUntil (std::chrono::steady_clock::time_point until, TMessHandler *messHandler, const std::string &fileName, const std::string &arguments="", const std::string &node="", int priority=0, bool absPriority=false, bool setNames=true, unsigned stackBytes=0)
 Load and run a program using the DRAMA loading mechanisms.
 
void SignalDramaToExit (std::weak_ptr< Task > dramaTask, StatusType exitStatus=STATUS__OK)
 Signal to DRAMA that this task should exit.