Graybat  1.1
Graph Approach for Highly Generic Communication Schemes Based on Adaptive Topologies
Event

An event is a class that is returned by non-blocking or asynchronous communication functions like graybat::Cage::asyncSend or graybat::Cage::asyncRecv. Each communication policy needs to define its event class, since this can be very library dependent. The cage determines a strict event interface, but leaves their implementation open to the communication policy.

The following listing provides a skeleton for a event class with all necessary methods:

struct EventSkeleton {
// Wait for the event to be finished
void wait() {...}
// Ask for current state of the event
bool ready() {...}
// Ask for VAddr where message of event comes from
VAddr source() {...}
// Ask for the tag the message of this event was send with
Tag getTag() {...}
};