23 #ifndef __PLUGINS_CLIPS_ASPECT_CLIPS_ENV_MANAGER_H_ 24 #define __PLUGINS_CLIPS_ASPECT_CLIPS_ENV_MANAGER_H_ 26 #include <core/utils/lockptr.h> 49 create_env(
const std::string &env_name,
const std::string &log_component_name);
52 void add_features(
const std::list<CLIPSFeature *> &features);
56 std::map<std::string, LockPtr<CLIPS::Environment>>
environments()
const;
62 CLIPS::Value clips_request_feature(std::string env_name, std::string feature_name);
63 CLIPS::Values clips_now();
64 void guarded_load(
const std::string &env_name,
const std::string &filename);
71 std::string clips_dir_;
76 std::list<std::string> req_feat;
80 std::map<std::string, ClipsEnvData > envs_;
81 std::map<std::string, CLIPSFeature * > features_;
void remove_features(const std::list< CLIPSFeature *> &features)
Remove a feature by name.
virtual ~CLIPSEnvManager()
Destructor.
Fawkes library namespace.
CLIPSEnvManager(Logger *logger, Clock *clock, std::string &clips_dir)
Constructor.
This is supposed to be the central clock in Fawkes.
void destroy_env(const std::string &env_name)
Destroy the named environment.
void add_features(const std::list< CLIPSFeature *> &features)
Add a feature by name.
void assert_can_remove_features(const std::list< CLIPSFeature *> &features)
Assert that a feature can be removed.
LockPtr< CLIPS::Environment > create_env(const std::string &env_name, const std::string &log_component_name)
Create a new environment.
std::map< std::string, LockPtr< CLIPS::Environment > > environments() const
Get map of environments.
CLIPS environment manager.