22 #ifndef __PLUGINS_PLEXIL_BLACKBOARD_ADAPTER_H_ 23 #define __PLUGINS_PLEXIL_BLACKBOARD_ADAPTER_H_ 25 #include <blackboard/blackboard.h> 26 #include <blackboard/interface_listener.h> 27 #include <logging/logger.h> 29 #include <InterfaceAdapter.hh> 65 virtual void lookupNow(PLEXIL::State
const &state, PLEXIL::StateCacheEntry &cacheEntry);
67 virtual void subscribe(
const PLEXIL::State &state);
68 virtual void unsubscribe(
const PLEXIL::State &state);
75 void bb_open_for_reading(PLEXIL::Command *cmd);
76 void bb_close(PLEXIL::Command *cmd);
77 void bb_read(PLEXIL::Command *cmd);
78 void bb_read_all(PLEXIL::Command *cmd);
79 void bb_print(PLEXIL::Command *cmd);
85 std::mutex ifs_read_mutex_;
86 std::map<std::string, fawkes::Interface *> ifs_read_;
88 std::map<std::string, std::function<void(PLEXIL::Command *)>> commands_;
90 std::multimap<std::string, PLEXIL::State> subscribed_states_;
94 void initFawkesBlackboardAdapter();
virtual bool shutdown()
Shut adapter down.
Fawkes library namespace.
virtual void unsubscribe(const PLEXIL::State &state)
Unsubscribe from updates.
virtual void executeCommand(PLEXIL::Command *cmd)
Perform given command.
Base class for all Fawkes BlackBoard interfaces.
virtual bool stop()
Stop adapter.
virtual void subscribe(const PLEXIL::State &state)
Subscribe to updates for given state.
virtual bool reset()
Reset adapter.
virtual bool initialize()
Initialize adapter.
BlackboardPlexilAdapter(PLEXIL::AdapterExecInterface &execInterface)
Constructor.
The BlackBoard abstract class.
virtual bool start()
Start adapter.
An interface adapter using standard POSIX time facilities to implement LookupNow and LookupOnChange.
virtual ~BlackboardPlexilAdapter()
Destructor.
virtual void lookupNow(PLEXIL::State const &state, PLEXIL::StateCacheEntry &cacheEntry)
Immediate lookup of value.
BlackBoard interface listener.