Fawkes API  Fawkes Development Version
fawkes::BlackBoardMessageManager Class Reference

BlackBoard message manager. More...

#include <>>

Inheritance diagram for fawkes::BlackBoardMessageManager:

Public Member Functions

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

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

◆ BlackBoardMessageManager()

fawkes::BlackBoardMessageManager::BlackBoardMessageManager ( BlackBoardNotifier notifier)

Constructor.

Parameters
notifierBlackBoard notifier to all for events

Definition at line 47 of file message_manager.cpp.

◆ ~BlackBoardMessageManager()

fawkes::BlackBoardMessageManager::~BlackBoardMessageManager ( )

Destructor.

Definition at line 55 of file message_manager.cpp.

Member Function Documentation

◆ transmit()

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::Interface::msgq_append(), fawkes::BlackBoardNotifier::notify_of_message_received(), fawkes::Message::recipient(), fawkes::Message::sender_thread_name(), and fawkes::Interface::type().


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