| Class Overview |
void AddMessage(BMessage* message);
void RemoveMessage(BMessage* message);
AddMessage()
adds message to the far end of the
queue. RemoveMessage()
removes a particular
message from the queue and deletes it.
int32 CountMessages() const;
bool IsEmpty() const;
CountMessages()
returns the number of
messages currently in the queue.
IsEmpty()
returns true
if the
object doesn't contain any messages, and false
otherwise.
BMessage* FindMessage(int32 index) const;
BMessage* FindMessage(uint32 what,
int32 index = 0) const;
FindMessage()
returns a pointer to the
index
'th
BMessage
in the
queue, where index 0 signifies the message that's been in the queue the
longest. The second version lets you specify a what
field value; in this case, only messages that match the what
argument are
counted. If no message matches the criteria, the functions return
NULL
.
The message is not removed from the message queue.
bool Lock();
void Unlock();
These functions lock and unlock the BMessageQueue
,
so that another thread won't alter the contents of the queue while it's
being read. Lock()
doesn't return until it has
the queue locked; it always returns true
.
Unlock()
releases the lock so that someone else
can lock it. Calls to these functions can be nested.
See also:
BLooper::Lock()
BMessage
* NextMessage();
Removes and returns the oldest message from the queue. If the queue is
empty, the function returns NULL
.
See also:
FindMessage()