Fawkes API
Fawkes Development Version
|
23 #include <blackboard/blackboard.h>
24 #include <blackboard/internal/notifier.h>
167 if (create_notifier) {
259 std::string t = type;
261 t = t.substr(t.find_first_not_of(
"0123456789"));
262 t = t.substr(0, t.length() - 1);
275 if (vasprintf(&
id, identifier_format, arg) != -1) {
276 std::string id_s(
id);
280 throw Exception(
"Failed to generate identifier from format");
298 va_start(arg, identifier);
322 va_start(arg, identifier);
virtual void register_listener(BlackBoardInterfaceListener *listener, ListenerRegisterFlag flag=BBIL_FLAG_ALL)
Register BB event listener.
virtual void unregister_listener(BlackBoardInterfaceListener *listener)
Unregister BB interface listener.
void register_listener(BlackBoardInterfaceListener *listener, BlackBoard::ListenerRegisterFlag flag)
Register BB event listener.
BlackBoardNotifier * notifier_
Notifier for BB events.
void register_observer(BlackBoardInterfaceObserver *observer)
Register BB interface observer.
virtual Interface * open_for_reading_f(const char *interface_type, const char *identifier,...)
Open interface for reading with identifier format string.
std::string format_identifier(const char *identifier_format, va_list arg)
Get formatted identifier string.
std::string demangle_fawkes_interface_name(const char *type)
Produce interface name from C++ signature.
virtual ~BlackBoard()
Destructor.
virtual void register_observer(BlackBoardInterfaceObserver *observer)
Register BB interface observer.
void unregister_observer(BlackBoardInterfaceObserver *observer)
Unregister BB interface observer.
virtual void unregister_observer(BlackBoardInterfaceObserver *observer)
Unregister BB interface observer.
void unregister_listener(BlackBoardInterfaceListener *listener)
Unregister BB interface listener.
void update_listener(BlackBoardInterfaceListener *listener, BlackBoard::ListenerRegisterFlag flag)
Update BB event listener.
virtual Interface * open_for_reading(const char *interface_type, const char *identifier, const char *owner=NULL)=0
BlackBoard(bool create_notifier=true)
Constructor.
virtual Interface * open_for_writing_f(const char *interface_type, const char *identifier,...)
Open interface for writing with identifier format string.
virtual Interface * open_for_writing(const char *interface_type, const char *identifier, const char *owner=NULL)=0
virtual void update_listener(BlackBoardInterfaceListener *listener, ListenerRegisterFlag flag=BBIL_FLAG_ALL)
Update BB event listener.