22 #ifndef __PLUGINS_PLEXIL_REMOTE_ADAPTER_H_
23 #define __PLUGINS_PLEXIL_REMOTE_ADAPTER_H_
25 #include <core/utils/lockptr.h>
26 #include <utils/system/fam.h>
28 #include <InterfaceAdapter.hh>
42 class NetworkConfiguration;
43 class FawkesNetworkClient;
44 class FileAlterationMonitor;
71 virtual void fam_event(
const char *filename,
unsigned int mask);
74 std::string cfg_navgraph_filename_;
77 std::unique_ptr<fawkes::FawkesNetworkClient> client_;
78 std::unique_ptr<fawkes::Logger> logger_;
79 std::unique_ptr<fawkes::BlackBoard> blackboard_;
80 std::unique_ptr<fawkes::NetworkConfiguration> config_;
82 std::unique_ptr<fawkes::FileAlterationMonitor> navgraph_fam_;
83 std::mutex navgraph_fam_mutex_;
84 std::thread navgraph_fam_thread_;
86 std::map<std::string, std::function<void(PLEXIL::Command *)>> commands_;
90 void initNavGraphAdapter();