24#ifndef _PLUGINS_PDDL_ROBOT_MEMORYTHREAD_H_
25#define _PLUGINS_PDDL_ROBOT_MEMORYTHREAD_H_
27#include "interfaces/PddlGenInterface.h"
29#include <aspect/blackboard.h>
30#include <aspect/configurable.h>
31#include <aspect/logging.h>
32#include <blackboard/interface_listener.h>
33#include <core/threading/thread.h>
34#include <ctemplate/template.h>
35#include <plugins/robot-memory/aspect/robot_memory_aspect.h>
37#include <bsoncxx/document/view.hpp>
66 fawkes::PddlGenInterface *gen_if;
68 std::string collection;
69 std::string input_path;
70 std::string output_path;
73 void fill_dict_from_document(ctemplate::TemplateDictionary *dict,
74 const bsoncxx::document::view &obj,
75 std::string prefix =
"");
Generate PDDL files from the robot memory.
virtual void run()
Stub to see name in backtrace for easier debugging.
virtual void loop()
Thread is only waked up if there is a new interface message to generate a pddl.
virtual void finalize()
Finalize the thread.
virtual void init()
Initialize the thread.
Thread aspect to access to BlackBoard.
BlackBoard interface listener.
Thread aspect to access configuration data.
Base class for all Fawkes BlackBoard interfaces.
Thread aspect to log output.
Base class for all messages passed through interfaces in Fawkes BlackBoard.
Thread aspect to get access to a the RobotMemory.
Thread class encapsulation of pthreads.
Fawkes library namespace.