#include <contexts.hpp>


Public Member Functions | |
| readonly_context () | |
| virtual | ~readonly_context () |
| virtual readonly_context & | get_readonly_context ()=0 |
| virtual void | on_readonly_context_create ()=0 |
| virtual const team & | current_team () const =0 |
| virtual void | diagnostic (const std::string &msg)=0 |
| virtual void | log_message (const std::string &msg)=0 |
| virtual attack_result_ptr | check_attack_action (const map_location &attacker_loc, const map_location &defender_loc, int attacker_weapon)=0 |
| virtual move_result_ptr | check_move_action (const map_location &from, const map_location &to, bool remove_movement=true)=0 |
| virtual recall_result_ptr | check_recall_action (const std::string &id, const map_location &where=map_location::null_location, const map_location &from=map_location::null_location)=0 |
| virtual recruit_result_ptr | check_recruit_action (const std::string &unit_name, const map_location &where=map_location::null_location, const map_location &from=map_location::null_location)=0 |
| virtual stopunit_result_ptr | check_stopunit_action (const map_location &unit_location, bool remove_movement=true, bool remove_attacks=false)=0 |
| virtual void | calculate_possible_moves (std::map< map_location, pathfind::paths > &possible_moves, move_map &srcdst, move_map &dstsrc, bool enemy, bool assume_full_movement=false, const terrain_filter *remove_destinations=NULL) const =0 |
| virtual void | calculate_moves (const unit_map &units, std::map< map_location, pathfind::paths > &possible_moves, move_map &srcdst, move_map &dstsrc, bool enemy, bool assume_full_movement=false, const terrain_filter *remove_destinations=NULL, bool see_all=false) const =0 |
| virtual const game_info & | get_info () const =0 |
| virtual defensive_position const & | best_defensive_position (const map_location &unit, const move_map &dstsrc, const move_map &srcdst, const move_map &enemy_dstsrc) const =0 |
| virtual std::map< map_location, defensive_position > & | defensive_position_cache () const =0 |
| virtual double | get_aggression () const =0 |
| virtual int | get_attack_depth () const =0 |
| virtual const aspect_map & | get_aspects () const =0 |
| virtual aspect_map & | get_aspects ()=0 |
| virtual void | add_facet (const std::string &id, const config &cfg) const =0 |
| virtual void | add_aspects (std::vector< aspect_ptr > &aspects)=0 |
| virtual const attacks_vector & | get_attacks () const =0 |
| virtual const variant & | get_attacks_as_variant () const =0 |
| virtual const terrain_filter & | get_avoid () const =0 |
| virtual double | get_caution () const =0 |
| virtual const move_map & | get_dstsrc () const =0 |
| virtual const move_map & | get_enemy_dstsrc () const =0 |
| virtual const moves_map & | get_enemy_possible_moves () const =0 |
| virtual const move_map & | get_enemy_srcdst () const =0 |
| virtual engine_ptr | get_engine_by_cfg (const config &cfg)=0 |
| get engine by cfg, creating it if it is not created yet but known | |
| virtual const std::vector < engine_ptr > & | get_engines () const =0 |
| virtual std::vector< engine_ptr > & | get_engines ()=0 |
| virtual std::string | get_grouping () const =0 |
| virtual const std::vector < goal_ptr > & | get_goals () const =0 |
| virtual std::vector< goal_ptr > & | get_goals ()=0 |
| virtual double | get_leader_aggression () const =0 |
| virtual config | get_leader_goal () const =0 |
| virtual double | get_leader_value () const =0 |
| virtual double | get_number_of_possible_recruits_to_force_recruit () const =0 |
| virtual bool | get_passive_leader () const =0 |
| virtual bool | get_passive_leader_shares_keep () const =0 |
| virtual const moves_map & | get_possible_moves () const =0 |
| virtual const std::vector< unit > & | get_recall_list () const =0 |
| virtual stage_ptr | get_recruitment (ai_context &context) const =0 |
| virtual bool | get_recruitment_ignore_bad_combat () const =0 |
| virtual bool | get_recruitment_ignore_bad_movement () const =0 |
| virtual const std::vector < std::string > | get_recruitment_pattern () const =0 |
| virtual double | get_scout_village_targeting () const =0 |
| virtual bool | get_simple_targeting () const =0 |
| virtual const move_map & | get_srcdst () const =0 |
| virtual bool | get_support_villages () const =0 |
| virtual double | get_village_value () const =0 |
| virtual int | get_villages_per_scout () const =0 |
| virtual bool | is_active (const std::string &time_of_day, const std::string &turns) const =0 |
| virtual bool | is_dst_src_valid_lua () const =0 |
| virtual bool | is_dst_src_enemy_valid_lua () const =0 |
| virtual bool | is_src_dst_valid_lua () const =0 |
| virtual bool | is_src_dst_enemy_valid_lua () const =0 |
| virtual void | invalidate_defensive_position_cache () const =0 |
| virtual void | invalidate_move_maps () const =0 |
| virtual void | invalidate_keeps_cache () const =0 |
| virtual const std::set < map_location > & | keeps () const =0 |
| virtual bool | leader_can_reach_keep () const =0 |
| virtual const map_location & | nearest_keep (const map_location &loc) const =0 |
| virtual double | power_projection (const map_location &loc, const move_map &dstsrc) const =0 |
| Function which finds how much 'power' a side can attack a certain location with. | |
| virtual void | raise_user_interact () const =0 |
| virtual void | recalculate_move_maps () const =0 |
| virtual void | recalculate_move_maps_enemy () const =0 |
| virtual void | set_src_dst_valid_lua ()=0 |
| virtual void | set_src_dst_enemy_valid_lua ()=0 |
| virtual void | set_dst_src_valid_lua ()=0 |
| virtual void | set_dst_src_enemy_valid_lua ()=0 |
| virtual const map_location & | suitable_keep (const map_location &leader_location, const pathfind::paths &leader_paths)=0 |
| get most suitable keep for leader - nearest free that can be reached in 1 turn, if none - return nearest occupied that can be reached in 1 turn, if none - return nearest keep, if none - return null_location | |
| virtual config | to_readonly_context_config () const =0 |
| serialize to config | |
| virtual std::map< std::pair < map_location, const unit_type * >, std::pair < battle_context_unit_stats, battle_context_unit_stats > > & | unit_stats_cache () const =0 |
Definition at line 176 of file contexts.hpp.
| ai::readonly_context::readonly_context | ( | ) | [inline] |
Definition at line 178 of file contexts.hpp.
| virtual ai::readonly_context::~readonly_context | ( | ) | [inline, virtual] |
Definition at line 179 of file contexts.hpp.
| virtual void ai::readonly_context::add_aspects | ( | std::vector< aspect_ptr > & | aspects | ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::add_aspects().

| virtual void ai::readonly_context::add_facet | ( | const std::string & | id, | |
| const config & | cfg | |||
| ) | const [pure virtual] |
| virtual defensive_position const& ai::readonly_context::best_defensive_position | ( | const map_location & | unit, | |
| const move_map & | dstsrc, | |||
| const move_map & | srcdst, | |||
| const move_map & | enemy_dstsrc | |||
| ) | const [pure virtual] |
Referenced by ai::attack_analysis::analyze(), and ai::readonly_context_proxy::best_defensive_position().

| virtual void ai::readonly_context::calculate_moves | ( | const unit_map & | units, | |
| std::map< map_location, pathfind::paths > & | possible_moves, | |||
| move_map & | srcdst, | |||
| move_map & | dstsrc, | |||
| bool | enemy, | |||
| bool | assume_full_movement = false, |
|||
| const terrain_filter * | remove_destinations = NULL, |
|||
| bool | see_all = false | |||
| ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::calculate_moves().

| virtual void ai::readonly_context::calculate_possible_moves | ( | std::map< map_location, pathfind::paths > & | possible_moves, | |
| move_map & | srcdst, | |||
| move_map & | dstsrc, | |||
| bool | enemy, | |||
| bool | assume_full_movement = false, |
|||
| const terrain_filter * | remove_destinations = NULL | |||
| ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::calculate_possible_moves().

| virtual attack_result_ptr ai::readonly_context::check_attack_action | ( | const map_location & | attacker_loc, | |
| const map_location & | defender_loc, | |||
| int | attacker_weapon | |||
| ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::check_attack_action().

| virtual move_result_ptr ai::readonly_context::check_move_action | ( | const map_location & | from, | |
| const map_location & | to, | |||
| bool | remove_movement = true | |||
| ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::check_move_action().

| virtual recall_result_ptr ai::readonly_context::check_recall_action | ( | const std::string & | id, | |
| const map_location & | where = map_location::null_location, |
|||
| const map_location & | from = map_location::null_location | |||
| ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::check_recall_action(), and ai::formula_ai::execute_variant().

| virtual recruit_result_ptr ai::readonly_context::check_recruit_action | ( | const std::string & | unit_name, | |
| const map_location & | where = map_location::null_location, |
|||
| const map_location & | from = map_location::null_location | |||
| ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::check_recruit_action(), and ai::formula_ai::execute_variant().

| virtual stopunit_result_ptr ai::readonly_context::check_stopunit_action | ( | const map_location & | unit_location, | |
| bool | remove_movement = true, |
|||
| bool | remove_attacks = false | |||
| ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::check_stopunit_action().

| virtual const team& ai::readonly_context::current_team | ( | ) | const [pure virtual] |
Referenced by ai::attack_analysis::analyze(), ai::cfun_ai_get_suitable_keep(), ai::readonly_context_proxy::current_team(), and ai::attack_analysis::rating().

| virtual std::map<map_location,defensive_position>& ai::readonly_context::defensive_position_cache | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::defensive_position_cache().

| virtual void ai::readonly_context::diagnostic | ( | const std::string & | msg | ) | [pure virtual] |
| virtual double ai::readonly_context::get_aggression | ( | ) | const [pure virtual] |
Referenced by ai::ai_attack(), ai::cfun_ai_get_aggression(), ai::cfun_attack_rating(), and ai::readonly_context_proxy::get_aggression().

| virtual const aspect_map& ai::readonly_context::get_aspects | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::get_aspects().

| virtual aspect_map& ai::readonly_context::get_aspects | ( | ) | [pure virtual] |
| virtual int ai::readonly_context::get_attack_depth | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_attack_depth(), and ai::readonly_context_proxy::get_attack_depth().

| virtual const attacks_vector& ai::readonly_context::get_attacks | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_attacks(), and ai::readonly_context_proxy::get_attacks().

| virtual const variant& ai::readonly_context::get_attacks_as_variant | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::get_attacks_as_variant().

| virtual const terrain_filter& ai::readonly_context::get_avoid | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_avoid(), and ai::readonly_context_proxy::get_avoid().

| virtual double ai::readonly_context::get_caution | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_caution(), ai::readonly_context_proxy::get_caution(), and ai::attack_analysis::rating().

| virtual const move_map& ai::readonly_context::get_dstsrc | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_dstsrc(), and ai::readonly_context_proxy::get_dstsrc().

| virtual const move_map& ai::readonly_context::get_enemy_dstsrc | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_enemy_dstsrc(), ai::cfun_ai_get_targets(), and ai::readonly_context_proxy::get_enemy_dstsrc().

| virtual const moves_map& ai::readonly_context::get_enemy_possible_moves | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::get_enemy_possible_moves().

| virtual const move_map& ai::readonly_context::get_enemy_srcdst | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_enemy_srcdst(), and ai::readonly_context_proxy::get_enemy_srcdst().

| virtual engine_ptr ai::readonly_context::get_engine_by_cfg | ( | const config & | cfg | ) | [pure virtual] |
get engine by cfg, creating it if it is not created yet but known
Referenced by ai::readonly_context_proxy::get_engine_by_cfg(), ai::engine::parse_aspect_from_config(), ai::engine::parse_candidate_action_from_config(), ai::engine::parse_engine_from_config(), ai::engine::parse_goal_from_config(), and ai::engine::parse_stage_from_config().

| virtual std::vector<engine_ptr>& ai::readonly_context::get_engines | ( | ) | [pure virtual] |
| virtual const std::vector<engine_ptr>& ai::readonly_context::get_engines | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::get_engines().

| virtual const std::vector<goal_ptr>& ai::readonly_context::get_goals | ( | ) | const [pure virtual] |
| virtual std::vector<goal_ptr>& ai::readonly_context::get_goals | ( | ) | [pure virtual] |
| virtual std::string ai::readonly_context::get_grouping | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_grouping(), and ai::readonly_context_proxy::get_grouping().

| virtual const game_info& ai::readonly_context::get_info | ( | ) | const [pure virtual] |
| virtual double ai::readonly_context::get_leader_aggression | ( | ) | const [pure virtual] |
Referenced by ai::attack_analysis::analyze(), ai::cfun_ai_get_leader_aggression(), ai::readonly_context_proxy::get_leader_aggression(), and ai::attack_analysis::rating().

| virtual config ai::readonly_context::get_leader_goal | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_leader_goal(), and ai::readonly_context_proxy::get_leader_goal().

| virtual double ai::readonly_context::get_leader_value | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_leader_value(), and ai::readonly_context_proxy::get_leader_value().

| virtual double ai::readonly_context::get_number_of_possible_recruits_to_force_recruit | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_number_of_possible_recruits_to_force_recruit(), and ai::readonly_context_proxy::get_number_of_possible_recruits_to_force_recruit().

| virtual bool ai::readonly_context::get_passive_leader | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_passive_leader(), and ai::readonly_context_proxy::get_passive_leader().

| virtual bool ai::readonly_context::get_passive_leader_shares_keep | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_passive_leader_shares_keep(), and ai::readonly_context_proxy::get_passive_leader_shares_keep().

| virtual const moves_map& ai::readonly_context::get_possible_moves | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::get_possible_moves().

| virtual readonly_context& ai::readonly_context::get_readonly_context | ( | ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::get_readonly_context(), and ai::readonly_context_proxy::init_readonly_context_proxy().

| virtual const std::vector<unit>& ai::readonly_context::get_recall_list | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::get_recall_list().

| virtual stage_ptr ai::readonly_context::get_recruitment | ( | ai_context & | context | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::get_recruitment().

| virtual bool ai::readonly_context::get_recruitment_ignore_bad_combat | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_recruitment_ignore_bad_combat(), and ai::readonly_context_proxy::get_recruitment_ignore_bad_combat().

| virtual bool ai::readonly_context::get_recruitment_ignore_bad_movement | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_recruitment_ignore_bad_movement(), and ai::readonly_context_proxy::get_recruitment_ignore_bad_movement().

| virtual const std::vector<std::string> ai::readonly_context::get_recruitment_pattern | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_recruitment_pattern(), and ai::readonly_context_proxy::get_recruitment_pattern().

| virtual double ai::readonly_context::get_scout_village_targeting | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_scout_village_targeting(), and ai::readonly_context_proxy::get_scout_village_targeting().

| virtual bool ai::readonly_context::get_simple_targeting | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_simple_targeting(), and ai::readonly_context_proxy::get_simple_targeting().

| virtual const move_map& ai::readonly_context::get_srcdst | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_srcdst(), and ai::readonly_context_proxy::get_srcdst().

| virtual bool ai::readonly_context::get_support_villages | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_support_villages(), and ai::readonly_context_proxy::get_support_villages().

| virtual double ai::readonly_context::get_village_value | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_village_value(), and ai::readonly_context_proxy::get_village_value().

| virtual int ai::readonly_context::get_villages_per_scout | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_get_villages_per_scout(), and ai::readonly_context_proxy::get_villages_per_scout().

| virtual void ai::readonly_context::invalidate_defensive_position_cache | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::invalidate_defensive_position_cache().

| virtual void ai::readonly_context::invalidate_keeps_cache | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::invalidate_keeps_cache().

| virtual void ai::readonly_context::invalidate_move_maps | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::invalidate_move_maps().

| virtual bool ai::readonly_context::is_active | ( | const std::string & | time_of_day, | |
| const std::string & | turns | |||
| ) | const [pure virtual] |
| virtual bool ai::readonly_context::is_dst_src_enemy_valid_lua | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_is_dst_src_enemy_valid(), and ai::readonly_context_proxy::is_dst_src_enemy_valid_lua().

| virtual bool ai::readonly_context::is_dst_src_valid_lua | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_is_dst_src_valid(), and ai::readonly_context_proxy::is_dst_src_valid_lua().

| virtual bool ai::readonly_context::is_src_dst_enemy_valid_lua | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_is_src_dst_enemy_valid(), and ai::readonly_context_proxy::is_src_dst_enemy_valid_lua().

| virtual bool ai::readonly_context::is_src_dst_valid_lua | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_is_src_dst_valid(), and ai::readonly_context_proxy::is_src_dst_valid_lua().

| virtual const std::set<map_location>& ai::readonly_context::keeps | ( | ) | const [pure virtual] |
| virtual bool ai::readonly_context::leader_can_reach_keep | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::leader_can_reach_keep().

| virtual void ai::readonly_context::log_message | ( | const std::string & | msg | ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::log_message().

| virtual const map_location& ai::readonly_context::nearest_keep | ( | const map_location & | loc | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::nearest_keep().

| virtual void ai::readonly_context::on_readonly_context_create | ( | ) | [pure virtual] |
Referenced by ai::readonly_context_proxy::on_readonly_context_create().

| virtual double ai::readonly_context::power_projection | ( | const map_location & | loc, | |
| const move_map & | dstsrc | |||
| ) | const [pure virtual] |
Function which finds how much 'power' a side can attack a certain location with.
This is basically the maximum hp of damage that can be inflicted upon a unit on loc by full-health units, multiplied by the defense these units will have. (if 'use_terrain' is false, then it will be multiplied by 0.5)
Example: 'loc' can be reached by two units, one of whom has a 10-3 attack and has 48/48 hp, and can defend at 40% on the adjacent grassland. The other has a 8-2 attack, and has 30/40 hp, and can defend at 60% on the adjacent mountain. The rating will be 10*3*1.0*0.4 + 8*2*0.75*0.6 = 19.2
Referenced by ai::readonly_context_proxy::power_projection().

| virtual void ai::readonly_context::raise_user_interact | ( | ) | const [pure virtual] |
Referenced by ai::readonly_context_proxy::raise_user_interact().

| virtual void ai::readonly_context::recalculate_move_maps | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_recalculate_move_maps(), and ai::readonly_context_proxy::recalculate_move_maps().

| virtual void ai::readonly_context::recalculate_move_maps_enemy | ( | ) | const [pure virtual] |
Referenced by ai::cfun_ai_recalculate_move_maps_enemy(), and ai::readonly_context_proxy::recalculate_move_maps_enemy().

| virtual void ai::readonly_context::set_dst_src_enemy_valid_lua | ( | ) | [pure virtual] |
Referenced by ai::cfun_ai_get_enemy_dstsrc(), and ai::readonly_context_proxy::set_dst_src_enemy_valid_lua().

| virtual void ai::readonly_context::set_dst_src_valid_lua | ( | ) | [pure virtual] |
Referenced by ai::cfun_ai_get_dstsrc(), and ai::readonly_context_proxy::set_dst_src_valid_lua().

| virtual void ai::readonly_context::set_src_dst_enemy_valid_lua | ( | ) | [pure virtual] |
Referenced by ai::cfun_ai_get_enemy_srcdst(), and ai::readonly_context_proxy::set_src_dst_enemy_valid_lua().

| virtual void ai::readonly_context::set_src_dst_valid_lua | ( | ) | [pure virtual] |
Referenced by ai::cfun_ai_get_srcdst(), and ai::readonly_context_proxy::set_src_dst_valid_lua().

| virtual const map_location& ai::readonly_context::suitable_keep | ( | const map_location & | leader_location, | |
| const pathfind::paths & | leader_paths | |||
| ) | [pure virtual] |
get most suitable keep for leader - nearest free that can be reached in 1 turn, if none - return nearest occupied that can be reached in 1 turn, if none - return nearest keep, if none - return null_location
Referenced by ai::cfun_ai_get_suitable_keep(), and ai::readonly_context_proxy::suitable_keep().

| virtual config ai::readonly_context::to_readonly_context_config | ( | ) | const [pure virtual] |
serialize to config
Referenced by ai::readonly_context_proxy::to_readonly_context_config().

| virtual std::map<std::pair<map_location,const unit_type *>, std::pair<battle_context_unit_stats,battle_context_unit_stats> >& ai::readonly_context::unit_stats_cache | ( | ) | const [pure virtual] |
Referenced by ai::attack_analysis::analyze(), and ai::readonly_context_proxy::unit_stats_cache().

| Generated by doxygen 1.7.1 on Thu May 24 2012 01:18:40 for The Battle for Wesnoth | Gna! | Forum | Wiki | CIA | devdocs |