24 #ifndef __LIBS_GUI_UTILS_INTERFACE_DISPATCHER_H_ 25 #define __LIBS_GUI_UTILS_INTERFACE_DISPATCHER_H_ 28 #include <glibmm/dispatcher.h> 29 #include <blackboard/interface_listener.h> 30 #include <core/utils/lock_queue.h> 40 bool message_enqueueing =
true);
43 std::list<fawkes::Interface *> ifaces,
44 bool message_enqueueing =
true);
58 unsigned int instance_serial)
throw();
60 unsigned int instance_serial)
throw();
62 unsigned int instance_serial)
throw();
64 unsigned int instance_serial)
throw();
78 bool __message_enqueueing;
80 Glib::Dispatcher __dispatcher_data_changed;
81 Glib::Dispatcher __dispatcher_message_received;
82 Glib::Dispatcher __dispatcher_writer_added;
83 Glib::Dispatcher __dispatcher_writer_removed;
84 Glib::Dispatcher __dispatcher_reader_added;
85 Glib::Dispatcher __dispatcher_reader_removed;
87 sigc::signal<void, Interface *> __signal_data_changed;
88 sigc::signal<void, Interface *, Message *> __signal_message_received;
89 sigc::signal<void, Interface *> __signal_writer_added;
90 sigc::signal<void, Interface *> __signal_writer_removed;
91 sigc::signal<void, Interface *> __signal_reader_added;
92 sigc::signal<void, Interface *> __signal_reader_removed;
Base class for all messages passed through interfaces in Fawkes BlackBoard.
virtual void on_data_changed()
Internal event handler.
virtual void on_message_received()
Internal event handler.
virtual void bb_interface_writer_added(Interface *interface, unsigned int instance_serial)
A writing instance has been opened for a watched interface.
virtual void bb_interface_reader_removed(Interface *interface, unsigned int instance_serial)
A reading instance has been closed for a watched interface.
Fawkes library namespace.
virtual bool bb_interface_message_received(Interface *interface, Message *message)
BlackBoard message received notification.
sigc::signal< void, Interface * > signal_writer_removed()
Get "writer removed" signal.
virtual void bb_interface_reader_added(Interface *interface, unsigned int instance_serial)
A reading instance has been opened for a watched interface.
virtual void on_writer_removed()
Internal event handler.
Base class for all Fawkes BlackBoard interfaces.
virtual void on_reader_removed()
Internal event handler.
virtual void bb_interface_writer_removed(Interface *interface, unsigned int instance_serial)
A writing instance has been closed for a watched interface.
virtual void bb_interface_data_changed(Interface *interface)
BlackBoard data changed notification.
sigc::signal< void, Interface * > signal_reader_removed()
Get "reader removed" signal.
sigc::signal< void, Interface * > signal_writer_added()
Get "writer added" signal.
virtual void on_writer_added()
Internal event handler.
InterfaceDispatcher(const char *listener_name, fawkes::Interface *iface, bool message_enqueueing=true)
Constructor.
virtual void on_reader_added()
Internal event handler.
Interface listener with dispatcher.
sigc::signal< void, Interface * > signal_reader_added()
Get "reader added" signal.
BlackBoard interface listener.
sigc::signal< void, Interface *, Message * > signal_message_received()
Get "message received" signal.
void set_message_enqueueing(bool enqueue)
Set if received messages should be enqueued or not.
sigc::signal< void, Interface * > signal_data_changed()
Get "data changed" signal.