Fawkes API
Fawkes Development Version
|
23 #include <blackboard/bbconfig.h>
24 #include <blackboard/internal/interface_manager.h>
25 #include <blackboard/internal/memory_manager.h>
26 #include <blackboard/internal/message_manager.h>
27 #include <blackboard/internal/notifier.h>
28 #include <blackboard/local.h>
29 #include <blackboard/net/handler.h>
32 #include <blackboard/shmem/header.h>
33 #include <blackboard/shmem/lister.h>
34 #include <utils/ipc/shm.h>
57 memmgr_ =
new BlackBoardMemoryManager(memsize, BLACKBOARD_VERSION, master);
62 msgmgr_->set_interface_manager(im_);
77 msgmgr_->set_interface_manager(im_);
115 std::list<Interface *>
117 const char *id_pattern,
130 im_->
close(interface);
142 return im_->
list(type_pattern, id_pattern);
183 const BlackBoardMemoryManager *
197 throw Exception(
"BlackBoardNetworkHandler already started");
200 nethandler_->
start();
virtual InterfaceInfoList * list_all()
InterfaceInfoList * list(const char *type_pattern, const char *id_pattern) const
Get a constrained list of interfaces.
static void erase_orphaned(const char *magic_token, SharedMemoryHeader *header, SharedMemoryLister *lister=0, const char *registry_name=0)
Erase orphaned (attach count = 0) shared memory segments of a given type.
Interface * open_for_reading(const char *interface_type, const char *identifier, const char *owner=NULL)
Open interface for reading.
virtual bool try_aliveness_restore()
Interface * open_for_writing(const char *interface_type, const char *identifier, const char *owner=NULL)
Open interface for writing.
virtual void start_nethandler(FawkesNetworkHub *hub)
Start network handler.
BlackBoardNotifier * notifier_
Notifier for BB events.
virtual Interface * open_for_reading(const char *interface_type, const char *identifier, const char *owner=NULL)
static void cleanup(const char *magic_token, bool use_lister=false)
Cleanup orphaned BlackBoard segments.
void close(Interface *interface)
Close interface.
virtual bool is_alive() const
virtual InterfaceInfoList * list(const char *type_pattern, const char *id_pattern)
std::list< Interface * > open_multiple_for_reading(const char *type_pattern, const char *id_pattern="*", const char *owner=NULL)
Open all interfaces of the given type for reading.
virtual std::list< Interface * > open_multiple_for_reading(const char *type_pattern, const char *id_pattern="*", const char *owner=NULL)
virtual void close(Interface *interface)
InterfaceInfoList * list_all() const
Get a list of interfaces.
virtual ~LocalBlackBoard()
Destructor.
void start(bool wait=true)
Call this method to start the thread.
void cancel()
Cancel a thread.
LocalBlackBoard(size_t memsize)
Heap Memory Constructor.
const BlackBoardMemoryManager * memory_manager() const
Get memory manager.
virtual Interface * open_for_writing(const char *interface_type, const char *identifier, const char *owner=NULL)
void join()
Join the thread.