NAME | SYNOPSIS | API RESTRICTIONS | DESCRIPTION | RETURN VALUES | ERRORS | ATTRIBUTES | SEE ALSO
#include <blackbox/chBlackBox.h>int bbRead(void* hdl, KnBBEvent*events, long* nevent);
The function or functions documented here may not be used safely in all application contexts with all APIs provided in the ChorusOS 5.0 product.
See API(5FEA) for details.
bbRead() reads events from a frozen black box.
The parameter hdl is a handle returned by bbOpen(), which serves as an opaque pointer into the black box.
The parameter events is an array of nevent KnBBEvents.
Upon successful return from bbRead(), events will be filled in with valid KnBBEvents from the black box.
By calling bbRead() repeatedly until it returns 0, the entire contents of a given black box can be read; each event will have been returned exactly once. The order of the returned events is not defined, but event order can be reconstructed by sorting the entire array of events by timestamp.
There is no way to search within a black box, and opening multiple handles to a black box is impossible.
One event from the black box, as returned by bbRead have the following members.
Time this event was added
Stated severity of the event
Name of the process/actor adding this event
PID of the process/actor adding this event
An ID of the thread adding this event
Stated tag of the event
Body of the event
bbRead() returns K_OK on success, otherwise a negative error code is returned.
hdl is not a valid handle, or the black boxis not open
The events or nevents argument points to an illegal address, or the corresponding buffer is not frozen
Some of the arguments provided are outside the caller's address space
The system is out of resources
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
NAME | SYNOPSIS | API RESTRICTIONS | DESCRIPTION | RETURN VALUES | ERRORS | ATTRIBUTES | SEE ALSO