23#ifndef _PLUGINS_HARDWARE_MODELS_HARDWARE_MODELS_THREAD_H_
24#define _PLUGINS_HARDWARE_MODELS_HARDWARE_MODELS_THREAD_H_
26#include <aspect/blackboard.h>
27#include <aspect/blocked_timing.h>
28#include <aspect/clock.h>
29#include <aspect/configurable.h>
30#include <aspect/logging.h>
31#include <blackboard/interface_listener.h>
32#include <core/threading/thread.h>
33#include <interfaces/HardwareModelsInterface.h>
34#include <plugins/clips/aspect/clips_feature.h>
35#include <utils/time/time.h>
72 std::map<std::string, fawkes::LockPtr<CLIPS::Environment>> envs_;
74 std::vector<std::string> components_;
79 const std::string & component,
80 const std::string & state);
82 const std::string & component,
83 const std::string & init_state);
85 const std::string & component,
86 const std::string & from,
87 const std::string & to,
88 const std::string & trans);
89 void clips_add_transition(
const std::string &component,
const std::string &transition)
noexcept;
Main thread of Hardware Models Plugin.
HardwareModelsThread()
Constructor.
virtual void finalize()
Finalize the thread.
virtual void loop()
Loop function to be executed when a new HardwareInterfaceMessage is recieved.
virtual void run()
Stub to see name in backtrace for easier debugging.
virtual void clips_context_destroyed(const std::string &env_name)
Notification that a CLIPS environment has been destroyed.
virtual void clips_context_init(const std::string &env_name, fawkes::LockPtr< CLIPS::Environment > &clips)
Initializes hardware components from yaml files for a clips environment.
virtual void init()
Initialize the thread.
Thread aspect to access to BlackBoard.
BlackBoard interface listener.
Thread aspect to provide a feature to CLIPS environments.
CLIPS feature maintainer.
Thread aspect to access configuration data.
HardwareModelsInterface Fawkes BlackBoard Interface.
Thread aspect to log output.
Thread class encapsulation of pthreads.
Fawkes library namespace.