Public Member Functions

fawkes::BlackBoardInterfaceProxy Class Reference

Interface proxy for remote BlackBoard. More...

#include <>>

Inheritance diagram for fawkes::BlackBoardInterfaceProxy:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 BlackBoardInterfaceProxy (FawkesNetworkClient *client, FawkesNetworkMessage *msg, BlackBoardNotifier *notifier, Interface *interface, bool readwrite)
 Constructor.
 ~BlackBoardInterfaceProxy ()
 Destructor.
void process_data_changed (FawkesNetworkMessage *msg)
 Process MSG_BB_DATA_CHANGED message.
void process_interface_message (FawkesNetworkMessage *msg)
 Process MSG_BB_INTERFACE message.
void reader_added (unsigned int event_serial)
 Reader has been added.
void reader_removed (unsigned int event_serial)
 Reader has been removed.
void writer_added (unsigned int event_serial)
 Writer has been added.
void writer_removed (unsigned int event_serial)
 Writer has been removed.
unsigned int serial () const
 Get instance serial of interface.
unsigned int clid () const
 Get client ID of assigned client.
Interfaceinterface () const
 Get instance serial of interface.
virtual bool exists_writer (const Interface *interface) const
virtual unsigned int num_readers (const Interface *interface) const
virtual void notify_of_data_change (const Interface *interface)
virtual void transmit (Message *message)
 Transmit message.

Detailed Description

Interface proxy for remote BlackBoard.

This proxy is used internally by RemoteBlackBoard to interact with an interface on the one side and the remote BlackBoard on the other side.

Author:
Tim Niemueller

Definition at line 39 of file interface_proxy.h.


Constructor & Destructor Documentation

fawkes::BlackBoardInterfaceProxy::BlackBoardInterfaceProxy ( FawkesNetworkClient client,
FawkesNetworkMessage msg,
BlackBoardNotifier notifier,
Interface interface,
bool  writer 
)

Constructor.

Parameters:
client Fawkes network client
msg must be a MSG_BB_OPEN_SUCCESS message describing the interface in question
notifier BlackBoard notifier to use to notify of interface events
interface interface instance of the correct type, will be initialized in this ctor and can be used afterwards.
writer true to make this a writing instance, false otherwise

Definition at line 56 of file interface_proxy.cpp.

References fawkes::FawkesNetworkMessage::clid(), fawkes::bb_iopensucc_msg_t::data_size, fawkes::Interface::datasize(), fawkes::interface_header_t::flag_writer_active, fawkes::bb_iopensucc_msg_t::has_writer, fawkes::Interface::hash(), fawkes::interface_header_t::hash, fawkes::Interface::id(), fawkes::interface_header_t::id, fawkes::FawkesNetworkMessage::msgid(), fawkes::interface_header_t::num_readers, fawkes::bb_iopensucc_msg_t::num_readers, fawkes::FawkesNetworkMessage::payload(), fawkes::interface_header_t::refcount, fawkes::bb_iopensucc_msg_t::serial, fawkes::Interface::type(), and fawkes::interface_header_t::type.

fawkes::BlackBoardInterfaceProxy::~BlackBoardInterfaceProxy (  ) 

Destructor.

Definition at line 105 of file interface_proxy.cpp.


Member Function Documentation

unsigned int fawkes::BlackBoardInterfaceProxy::clid (  )  const

Get client ID of assigned client.

Returns:
client ID

Definition at line 256 of file interface_proxy.cpp.

Interface * fawkes::BlackBoardInterfaceProxy::interface (  )  const

Get instance serial of interface.

Returns:
instance serial

Definition at line 265 of file interface_proxy.cpp.

void fawkes::BlackBoardInterfaceProxy::process_data_changed ( FawkesNetworkMessage msg  ) 
void fawkes::BlackBoardInterfaceProxy::process_interface_message ( FawkesNetworkMessage msg  ) 
void fawkes::BlackBoardInterfaceProxy::reader_added ( unsigned int  event_serial  ) 

Reader has been added.

Parameters:
event_serial instance serial of the interface that caused the event

Definition at line 203 of file interface_proxy.cpp.

References fawkes::BlackBoardNotifier::notify_of_reader_added().

void fawkes::BlackBoardInterfaceProxy::reader_removed ( unsigned int  event_serial  ) 

Reader has been removed.

Parameters:
event_serial instance serial of the interface that caused the event

Definition at line 213 of file interface_proxy.cpp.

References fawkes::BlackBoardNotifier::notify_of_reader_removed().

unsigned int fawkes::BlackBoardInterfaceProxy::serial (  )  const

Get instance serial of interface.

Returns:
instance serial

Definition at line 246 of file interface_proxy.cpp.

void fawkes::BlackBoardInterfaceProxy::transmit ( Message message  )  [virtual]
void fawkes::BlackBoardInterfaceProxy::writer_added ( unsigned int  event_serial  ) 

Writer has been added.

Parameters:
event_serial instance serial of the interface that caused the event

Definition at line 225 of file interface_proxy.cpp.

References fawkes::BlackBoardNotifier::notify_of_writer_added().

void fawkes::BlackBoardInterfaceProxy::writer_removed ( unsigned int  event_serial  ) 

Writer has been removed.

Parameters:
event_serial instance serial of the interface that caused the event

Definition at line 235 of file interface_proxy.cpp.

References fawkes::BlackBoardNotifier::notify_of_writer_removed().


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