Fawkes API  Fawkes Development Version
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
fawkes::BlackBoardMessageManager Class Reference

BlackBoard message manager. More...

#include <>>

Inheritance diagram for fawkes::BlackBoardMessageManager:

List of all members.

Public Member Functions

 BlackBoardMessageManager (BlackBoardNotifier *notifier)
 Constructor.
 ~BlackBoardMessageManager ()
 Destructor.
virtual void transmit (Message *message)
 Transmit message.
- Public Member Functions inherited from fawkes::MessageMediator
virtual ~MessageMediator ()
 Virtual destructor.

Friends

class LocalBlackBoard

Detailed Description

BlackBoard message manager.

Transmits messages from reading interface instances to the writer instance if the interface, if there is any.

Author:
Tim Niemueller

Definition at line 35 of file message_manager.h.


Constructor & Destructor Documentation

fawkes::BlackBoardMessageManager::BlackBoardMessageManager ( BlackBoardNotifier notifier)

Constructor.

Parameters:
notifierBlackBoard notifier to all for events

Definition at line 47 of file message_manager.cpp.

fawkes::BlackBoardMessageManager::~BlackBoardMessageManager ( )

Destructor.

Definition at line 55 of file message_manager.cpp.


Member Function Documentation

void fawkes::BlackBoardMessageManager::transmit ( Message message)
virtual

Transmit message.

The mediator may modify the message ID of the message.

Parameters:
messagemessage to transmit.
Exceptions:
BlackBoardNoWritingInstanceExceptionthrown if there is no writing *instance for the transmitting interface

Implements fawkes::MessageMediator.

Definition at line 61 of file message_manager.cpp.

References fawkes::Interface::id(), fawkes::Message::interface(), fawkes::LibLogger::log_warn(), fawkes::BlackBoardNotifier::notify_of_message_received(), fawkes::Message::recipient(), fawkes::RefCount::ref(), fawkes::Message::sender_thread_name(), and fawkes::Interface::type().


The documentation for this class was generated from the following files: