Fawkes API
Fawkes Development Version
|
24 #ifndef _ASPECT_MANAGER_H_
25 #define _ASPECT_MANAGER_H_
27 #include <core/threading/thread_finalizer.h>
28 #include <core/threading/thread_initializer.h>
40 class FawkesNetworkHub;
43 class ThreadCollector;
44 class NetworkNameResolver;
45 class ServicePublisher;
48 class BlockedTimingExecutor;
49 class MainLoopEmployer;
51 class SyncPointManager;
88 std::map<std::string, AspectIniFin *> inifins_;
89 std::map<std::string, AspectIniFin *> default_inifins_;
90 std::map<std::string, std::list<Thread *>> threads_;
This class gives access to SyncPoints.
Network name and address resolver.
The BlackBoard abstract class.
Interface for configuration handling.
virtual void init(Thread *thread)
This method is called by the ThreadManager for each newly added Thread.
Aspect initializer/finalizer base class.
virtual void finalize(Thread *thread)
Finalize a thread.
Fawkes library namespace.
Service publisher interface.
Thread finalizer interface.
virtual ~AspectManager()
Constructor.
Thread class encapsulation of pthreads.
void register_inifin(AspectIniFin *inifin)
Register initializer/finalizer.
Main loop employer The MainLoopEmployer calls the main loop for execution.
Logger employer The LoggerEmployer shall pipe all log messages of the system to added loggers.
Aspect and aspect initializer/finalizer manager.
Thread initializer interface.
bool has_threads_for_aspect(const char *aspect_name)
Check if threads for a particular aspect still exist.
void unregister_inifin(AspectIniFin *inifin)
Unregister initializer/finalizer.
This is supposed to be the central clock in Fawkes.
void register_default_inifins(BlackBoard *blackboard, ThreadCollector *collector, Configuration *config, Logger *logger, Clock *clock, FawkesNetworkHub *fnethub, MainLoopEmployer *mloop_employer, LoggerEmployer *logger_employer, BlockedTimingExecutor *btexec, NetworkNameResolver *nnresolver, ServicePublisher *service_publisher, ServiceBrowser *service_browser, PluginManager *pmanager, tf::Transformer *tf_listener, SyncPointManager *syncpoint_manager)
Register default aspect initializer/finalizer.
virtual bool prepare_finalize(Thread *thread)
Prepare finalization of a thread.