AAO DRAMA/DRAMA2 C++ Interface
DRAMA C++11 and later interface
Public Member Functions | List of all members
drama::MessageEventHandler Class Reference

Detailed Description

Message event handling objects.

When waiting for transactions in response to messages sent, objects of this type are used to process messages. A user may sub-class this and override the virtual methods in order to change the processing for events.

The sub-class may also want to override the WaitTimeout() method of the TransEvtProcessor sub-class.

#include "path.hh"

Inheritance diagram for drama::MessageEventHandler:
drama::IsRunningType drama::MonForwardEventHandler drama::thread::MonitorMessageHandler

Public Member Functions

virtual void BulkDone (thread::ProcessInfo messInfo)
 Invoked if a bulk data done message is received.
 
virtual void BulkTransferred (thread::ProcessInfo messInfo, DitsBulkInfoType bulkInfo)
 Invoked if a bulk data transferred message is received.
 
virtual void ErrorReport (thread::ProcessInfo messInfo, const std::string &task, const ErsMessageVector &messages)
 Invoked if an error report for the user is received.
 
virtual bool KickReceived (thread::ProcessInfo messInfo, const sds::IdPtr &arg)
 Invoked if an action waiting on a message receives a kick message during the wait.
 
virtual void MessageComplete (thread::ProcessInfo messInfo, StatusType status, const sds::IdPtr &arg)
 Invoked if a message complete message is received.
 
virtual void MessageRejected (thread::ProcessInfo messInfo, StatusType status)
 Invoked if the message sent was rejected by the target task.
 
virtual void NewTransaction (DitsMsgType msgType, DitsTransIdType tid) override
 This method is invoked each time a message is initiated.
 
virtual bool Process (thread::ProcessInfo messInfo, const TransEvtInfo &eventInfo, const sds::IdPtr &arg) override final
 Method invoked to process messages.
 
virtual void SignalReceived (thread::ProcessInfo messInfo, const sds::IdPtr &arg)
 Invoked if a signal for the action is received.
 
virtual void TaskDied (thread::ProcessInfo messInfo, StatusType status)
 Invoked if the subsidiary task died whilst we were waiting for a reply from it.
 
virtual void ThreadWaitAbort (thread::ProcessInfo messInfo, StatusType status)
 Invoked if the thread wait is aborted.
 
virtual void TriggerReceived (thread::ProcessInfo messInfo, StatusType status, const sds::IdPtr &arg)
 Invoked if a trigger message is received.
 
virtual void UserMessage (thread::ProcessInfo messInfo, const std::string &task, const std::string &message)
 Invoked if a message for the user is received.
 
virtual bool WaitTimeout (std::chrono::steady_clock::time_point *until)
 This method is invoked when a timeout occurs.
 

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