Fawkes API Fawkes Development Version
remote_skiller_executor.h
1/***************************************************************************
2 * remote_skiller_executor.h - Execute Golog++ actions as skills remotely
3 *
4 * Created: Tue 03 Dec 2019 14:33:42 CET 14:33
5 * Copyright 2019 Till Hofmann <hofmann@kbsg.rwth-aachen.de>
6 ****************************************************************************/
7
8/* This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU Library General Public License for more details.
17 *
18 * Read the full text in the LICENSE.GPL file in the doc directory.
19 */
20
21#pragma once
22
23#include "skiller_action_executor.h"
24
25namespace fawkes {
26namespace gpp {
28{
29public:
31 const std::string &agent_name_key,
32 const std::string &agent_name_value,
33 const std::string &hostname,
34 unsigned short int port,
35 Configuration * config,
36 const std::string &cfg_prefix);
37 virtual ~RemoteSkillerActionExecutor() override;
38 bool can_execute_activity(std::shared_ptr<gologpp::Activity> activity) const override;
39
40protected:
41 const char *name() const;
42
43private:
44 const std::string agent_param_name_;
45 const std::string agent_param_value_;
46};
47} // namespace gpp
48} // namespace fawkes
Interface for configuration handling.
Definition: config.h:68
Interface for logging.
Definition: logger.h:42
An ActionExecutor that executes an activity using a Skiller on a remote.
RemoteSkillerActionExecutor(Logger *logger, const std::string &agent_name_key, const std::string &agent_name_value, const std::string &hostname, unsigned short int port, Configuration *config, const std::string &cfg_prefix)
Constructor.
const char * name() const
Get the name of the executor; mainly used for logging.
bool can_execute_activity(std::shared_ptr< gologpp::Activity > activity) const override
Determine if this executor can execute the given activity.
An ActionExecutor that executes an activity using the Skiller.
Fawkes library namespace.