The Battle for Wesnoth  1.13.4+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
engine_fai.hpp
Go to the documentation of this file.
1 /*
2  Copyright (C) 2009 - 2016 by Yurii Chernyi <[email protected]>
3  Part of the Battle for Wesnoth Project http://www.wesnoth.org/
4 
5  This program is free software; you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation; either version 2 of the License, or
8  (at your option) any later version.
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY.
11 
12  See the COPYING file for more details.
13 */
14 
15 /**
16  * FAI AI Support engine - creating specific ai components from config
17  * @file
18  */
19 
20 #ifndef AI_COMPOSITE_ENGINE_FAI_HPP_INCLUDED
21 #define AI_COMPOSITE_ENGINE_FAI_HPP_INCLUDED
22 
23 #include "ai/composite/engine.hpp"
24 #include "ai/default/contexts.hpp"
25 
26 //============================================================================
27 namespace ai {
28 
29 class formula_ai;
30 
31 class engine_fai : public engine {
32 public:
33  engine_fai( readonly_context &context, const config &cfg );
34 
35  virtual ~engine_fai();
36 
37  virtual void do_parse_candidate_action_from_config( rca_context &context, const config &cfg, std::back_insert_iterator<std::vector< candidate_action_ptr > > b );
38 
39  virtual void do_parse_stage_from_config( ai_context &context, const config &cfg, std::back_insert_iterator<std::vector< stage_ptr > > b );
40 
41  virtual std::string evaluate(const std::string &str);
42 
43  virtual config to_config() const;
44 
45  virtual void set_ai_context(ai_context *context);
46 private:
48 };
49 
50 } //end of namespace ai
51 
52 #endif
AI Support engine - creating specific ai components from config.
GLdouble GLdouble GLdouble b
Definition: glew.h:6966
A small explanation about what's going on here: Each action has access to two game_info objects First...
Definition: actions.cpp:57
virtual std::string evaluate(const std::string &str)
Definition: engine_fai.cpp:126
virtual ~engine_fai()
Definition: engine_fai.cpp:84
virtual config to_config() const
serialize
Definition: engine_fai.cpp:143
engine_fai(readonly_context &context, const config &cfg)
Definition: engine_fai.cpp:76
Default AI contexts.
boost::shared_ptr< formula_ai > formula_ai_
Definition: engine_fai.hpp:47
A config object defines a single node in a WML file, with access to child nodes.
Definition: config.hpp:83
virtual void do_parse_candidate_action_from_config(rca_context &context, const config &cfg, std::back_insert_iterator< std::vector< candidate_action_ptr > > b)
Definition: engine_fai.cpp:89
GLsizei const GLcharARB ** string
Definition: glew.h:4503
virtual void set_ai_context(ai_context *context)
Definition: engine_fai.cpp:132
virtual void do_parse_stage_from_config(ai_context &context, const config &cfg, std::back_insert_iterator< std::vector< stage_ptr > > b)
Definition: engine_fai.cpp:101