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

◆ ObeyBulk() [2/2]

void drama::Path::ObeyBulk ( thread::TMessHandler action,
const std::string &  name,
BulkDataSds argIn,
unsigned  notifyBytes = 1024*1024,
sds::IdPtr *const  argOut = nullptr,
MessageEventHandler *const  eventProcessor = &_simpleEventProcessor 
)
inlineinherited

Sends an obey message to a task, with SDS bulk data argument, and blocks the current thread until the action is complete.

Parameters
actionA pointer to the threaded action which is executing this operation.
nameName of the action to start.
argInThe SDS Bulk Data segment to be the argument to the obey message. Contains an SDS item.
notifyBytesIf non-zero, it indicates your action should be notified (using EntryCode::BulkTransferred entries) every time the specified number of bytes are transferred. Note the this effect is somewhat dependent on the target task behavior and you may only receive the final EntryCode::BulkDone message.
argOutThe reply message argument, if any. An address of and sds::IdPtr is supplied. If you supply a
null pointer, it is ignored. Otherwise, any argument to the obey completion is copied into here.
If there is no argument to the reply, it will refer to a null SDS item.
eventProcessorAn object to use to process events. Defaults to a simple event processor that causes the method to return when the subsidiary action completes.

References drama::CreateRunDramaTask(), and drama::Path::ObeyBulk().