AAO DRAMA/DRAMA2 C++ Interface
DRAMA C++11 and later interface
|
The drama namespace contains all the classes, types etc of the DRAMA 2 implementation.
Namespaces | |
namespace | git |
Name space used to implement AAO Generic Implementation task features. | |
namespace | gitarg |
Namespace containing the GIT Argument reading classes. | |
namespace | logging |
This namespace implements the DRAMA 2 Logging system. | |
namespace | sds |
This namespace implements access to DRAMA SDS data structures. | |
namespace | thread |
This namespace is used for features which are particular to supporting C++11 thread based operations within DRAMA 2. | |
Classes | |
class | ArrayParameter |
The class ArrayParameter is used to implement DRAMA parameters containing arrays of primitive items (one dimension only). More... | |
class | ArrayParameter< std::string > |
The class ArrayParameter is used to implement DRAMA parameters containing arrays of primitive items (one dimension only). More... | |
class | Buffers |
A Class which supports setting up DRAMA message buffer structures. More... | |
class | BulkData |
Defines and optionally creates a shared memory section. More... | |
class | BulkDataArg |
A class used to manage a bulk data argument to an action. More... | |
class | BulkDataArgSds |
Class used to access SDS structure in bulk data arguments. More... | |
class | BulkDataSds |
Defines and optionally creates a shared memory section containing an SDS structure. More... | |
class | EntryInfo |
The EntryInfo class is used to access details about a DRAMA message event (and entry to an action). More... | |
class | ErsContext |
A Class used to manage ERS context. More... | |
class | Exception |
An Exception class for exceptions thrown by DRAMA V2 classes. More... | |
class | Future |
A class which wraps a std::future<T> and provides debugging output to stderr. More... | |
class | Future< void > |
A class which wraps a std::future<void> and provides debugging output to stderr. More... | |
class | GetPathEventHandler |
Default event handler type for GetPath() calls. More... | |
class | IsRunningType |
A message event handling object that maintains a variable indicating if the message is outstanding. More... | |
class | MessageEventHandler |
Message event handling objects. More... | |
class | MessageHandler |
A class which implements a DRAMA Message Handler. More... | |
class | MessageHandlerViaFunctor |
This class is used to creating MessageHandler objects referring to functions. More... | |
class | MessageUserStreamBuf |
Implement a streambuf sub-class that can write messages via the DRAMA MessageUser interface. More... | |
class | MonForwardEventHandler |
Forward monitor message event handling objects. More... | |
struct | nodel |
Declare an operator to be used as a deletion operator by std::shared_ptr. More... | |
class | ObeyThreadDispatcher |
Implement a ThreadDispatcher which sends Obey messages. More... | |
class | OrphanDetails |
Structure which maintains details on orphan transactions. More... | |
class | Parameter |
The class Parameter is used to implement DRAMA parameters containing primitive items. More... | |
class | Parameter< drama::sds::Id > |
The class Parameter is used to implement DRAMA parameters containing primitive items. More... | |
class | ParId |
A class used to access a DRAMA Parameter via an SDS Id. More... | |
class | ParSys |
A DRAMA 2 C++ Interface to the DRAMA Simple DITS Parameter System (SDP). More... | |
class | Path |
A Class which provides access to DRAMA's message sending facilities. More... | |
class | Request |
Class used by Obey and Kick handlers to indicate rescheduling requirements. More... | |
class | RunDramaExitNotifier |
Class used to arrange for notifications when the RunDrama exits. More... | |
class | ScopeGuard |
This class implements a simple scope guard class. More... | |
class | ScopeGuardAtomic |
This class implements a simple scope guard class with an std::atomic based type as the underlying type. More... | |
class | SdsListToUserObj |
Object used to print SDS objects using MessageUser from MessageHandler objects. More... | |
class | Spawnable |
A class which implements a Spawnable DRAMA Message Handler. More... | |
class | Task |
A class which implements a DRAMA task. More... | |
class | ThreadDispatcher |
A class to dispatch message sending to another thread. More... | |
struct | TransEvtInfo |
Structure is used to store details about a DRAMA reschedule message relating to a transaction, so the information can be transferred to a thread. More... | |
Typedefs | |
typedef std::vector< ErsMessageType > | ErsMessageVector |
A type used to return ERS messages. | |
using | MessageHandlerPtr = std::shared_ptr< MessageHandler > |
This type is used for passing MessageHandler object addresses around. | |
using | MessageReceiveFunction = std::function< Request(MessageHandler *)> |
Type used for functions specified to drama::MessageHandler::PutObeyHandler(), drama::MessageHandler::PutKickHandler() and drama::Task::Add(). | |
using | SpawnablePtr = std::shared_ptr< Spawnable > |
This type is used for passing Spawnable object addresses around. | |
Enumerations | |
enum class | EntryCode { Obey =DITS_REA_OBEY , Kick =DITS_REA_KICK , Resched =DITS_REA_RESCHED , Timeout =DITS_REA_RESCHED , Trigger =DITS_REA_TRIGGER , Signal =DITS_REA_ASTINT , Load =DITS_REA_LOAD , LoadFailed =DITS_REA_LOADFAILED , Rejected =DITS_REA_MESREJECTED , Complete =DITS_REA_COMPLETE , Died =DITS_REA_DIED , PathFound =DITS_REA_PATHFOUND , PathFailed =DITS_REA_PATHFAILED , Message =DITS_REA_MESSAGE , Error =DITS_REA_ERROR , Exit =DITS_REA_EXIT , Notify =DITS_REA_NOTIFY , BulkTransferred =DITS_REA_BULK_TRANSFERRED , BulkDone =DITS_REA_BULK_DONE , Drama2Signal =DITS_REA_DRAMA2 , DramaRunLoopExit =1111 , DramaMainThreadComplete =1112 , DramaAbortWaits =1113 } |
Entry type code - indicates the type of a DRAMA event. More... | |
enum class | RequestCode { End =DITS_REQ_END , Stage =DITS_REQ_STAGE , Wait =DITS_REQ_WAIT , Sleep =DITS_REQ_SLEEP , Message =DITS_REQ_MESSAGE , Exit =DITS_REQ_EXIT , KickNoChangeReq =DITS___REQ_NOCHANGE } |
Action reschedule request type. More... | |
enum class | ShareType { Default = 0 , Create = DITS_SHARE_CREATE } |
Share memory type codes. More... | |
Functions | |
template<typename T , unsigned S> | |
unsigned | ArraySize (const T(&v)[S]) |
Return the number of elements in an array. | |
void | CheckLockTaken (const std::string func, const std::string &file, const int lineNum) |
Ensure the current thread has taken the DRAMA task lock. | |
std::chrono::steady_clock::time_point | CreateFutureTimepoint (double secs) |
Return a steady_clock time point suitable for use with the Path::...WaitUntil() methods based on an offset in seconds from the current time. | |
template<class TaskClass > | |
void | CreateRunDramaTask () |
Create and run a DRAMA task, with standard exception handling. | |
template<class TaskClass , typename... ParamTypes> | |
void | CreateRunDramaTask (ParamTypes... taskPars) |
Create and run a DRAMA task, with standard exception handling. | |
void | ErsAnnulStack (StatusType *status) |
Annul the ERS stack of messages. | |
void | ErsFlushStack (StatusType *status) |
Report a std::string via ERS. | |
void | ErsReport (const std::string &mes, StatusType *status) |
Report a std::string via ERS. | |
template<typename... Types> | |
void | ErsReport (StatusType *status, const char *format, Types... args) |
Report a message via ERS - safe format. | |
template<typename... Types> | |
void | ExceptionThrowSafe (const std::string func, const std::string &file, const int lineNum, StatusType status, const char *format, Types... args) |
Create and throw an exception, variable argument list, Safe formatting of arguments. | |
std::string | FindFile (const std::string &spec, bool impdir=false) |
Find a file using DulFindFile() specifications. | |
bool | GetSymbolExists (const std::string &name) |
Return true if an environment variable is set. | |
std::string | GetSymbolVal (const std::string &name) |
Return the value of an environment variable. | |
template<typename T , typename... Types> | |
void | SafePrintf (std::ostream &ostream, const char *format, const T &value, Types... args) |
Safe formated write to a stream. | |
void | SafePrintf (std::ostream &ostream, const char *str) |
Safe formatted write to a stream. | |
Request | SimpleExitAction (drama::MessageHandler *messageHandler) |
A function which implements a simple exit action. | |
std::string | StatusToString (StatusType status) |
Convert a DRAMA status code to text. | |
template<typename Container > | |
void | stringtok (Container &container, std::string const &in, const char *const delimiters=" \t\n\r") |
stringtok is a replacment for C's strtok() function. | |
template<typename... Types> | |
void | TSafePrintf (std::ostream &ostream, const char *format, Types... args) |
Safe formated write to a stream, thread compatible. | |
Variables | |
const char * | Drama2Date |
The DRAMA 2 build date. | |
const char * | Drama2Version |
The DRAMA 2 ACMM Release version string. | |
Click here for the DRAMA home page and here for the AAO home page.
For more information, contact tony.farrell@mq.edu.au
Generated on Thu Dec 12 2024 23:07:35 for AAO DRAMA/DRAMA2 C++ Interface by 1.9.8