AAO DRAMA/DRAMA2 C++ Interface
DRAMA C++11 and later interface

◆ SetupWaitEvent()

virtual void drama::thread::TMessHandler::SetupWaitEvent ( DitsTransIdType  tid,
drama::Path pathObj 
)
pure virtual

Sets up a wait event for this thread.

This call allows a thread to later call WaitForTransaction() to cause the thread to be blocked until the specified transaction completes. This method must be invoked after the transaction is started but before the DRAMA lock is released, otherwise the DRAMA main loop may see any result of the transaction before WaitForTransaction() is invoked and not know how to dispatch it to this thread.

After calling this method, the DRAMA lock would then be released before calling WaitForTransaction().

Parameters
tidThe DITS Transaction we are setting up to wait on. Must have been returned by a DRAMA DITS routine, e.g. DitsPathGet() or DitsObey(). A special case of 0 (nullptr) is used to indicate waiting for kick message, and is an internal only feature.
pathObjThe drama::Path object we using to communicate with the target task. 0 (nullptr) for a kick message.

Implemented in drama::thread::TAction, and drama::thread::TUface.