23 #ifndef _BLACKBOARD_LOCAL_H_
24 #define _BLACKBOARD_LOCAL_H_
26 #include <blackboard/blackboard.h>
27 #include <core/exceptions/software.h>
33 class BlackBoardInterfaceManager;
34 class BlackBoardMemoryManager;
35 class BlackBoardMessageManager;
36 class BlackBoardNetworkHandler;
37 class BlackBoardNotifier;
39 class InterfaceInfoList;
40 class BlackBoardInterfaceListener;
41 class BlackBoardInterfaceObserver;
42 class FawkesNetworkHub;
48 LocalBlackBoard(
size_t memsize,
const char *magic_token,
bool master =
true);
52 open_for_reading(
const char *interface_type,
const char *identifier,
const char *owner = NULL);
54 open_for_writing(
const char *interface_type,
const char *identifier,
const char *owner = NULL);
59 virtual bool is_alive()
const throw();
63 const char *id_pattern =
"*",
64 const char *owner = NULL);
68 static void cleanup(
const char *magic_token,
bool use_lister =
false);
BlackBoard interface manager.
BlackBoard memory manager.
BlackBoard message manager.
BlackBoard Network Handler.
The BlackBoard abstract class.
Interface information list.
Base class for all Fawkes BlackBoard interfaces.
static void cleanup(const char *magic_token, bool use_lister=false)
Cleanup orphaned BlackBoard segments.
LocalBlackBoard(size_t memsize)
Heap Memory Constructor.
virtual InterfaceInfoList * list(const char *type_pattern, const char *id_pattern)
Get list of interfaces matching type and ID patterns.
virtual std::list< Interface * > open_multiple_for_reading(const char *type_pattern, const char *id_pattern="*", const char *owner=NULL)
Open multiple interfaces for reading.
virtual Interface * open_for_reading(const char *interface_type, const char *identifier, const char *owner=NULL)
Open interface for reading.
virtual void close(Interface *interface)
Close interface.
const BlackBoardMemoryManager * memory_manager() const
Get memory manager.
virtual InterfaceInfoList * list_all()
Get list of all currently existing interfaces.
virtual bool is_alive() const
Check if the BlackBoard is still alive.
virtual ~LocalBlackBoard()
Destructor.
virtual Interface * open_for_writing(const char *interface_type, const char *identifier, const char *owner=NULL)
Open interface for writing.
virtual bool try_aliveness_restore()
Try to restore the aliveness of the BlackBoard instance.
virtual void start_nethandler(FawkesNetworkHub *hub)
Start network handler.
Fawkes library namespace.