Author: crab
Date: Thu Jun  4 21:36:36 2009
New Revision: 36057

URL: http://svn.gna.org/viewcvs/wesnoth?rev=36057&view=rev
Log:
AI refactoring: ai_interface -> ai::interface

Modified:
    trunk/src/ai/ai.cpp
    trunk/src/ai/ai.hpp
    trunk/src/ai/ai2.hpp
    trunk/src/ai/ai_dfool.hpp
    trunk/src/ai/ai_interface.cpp
    trunk/src/ai/ai_interface.hpp
    trunk/src/ai/ai_manager.cpp
    trunk/src/ai/ai_manager.hpp
    trunk/src/ai/composite/ai.hpp
    trunk/src/ai/formula_ai.cpp
    trunk/src/ai/testing/stage_fallback.hpp

Modified: trunk/src/ai/ai.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/ai.cpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/ai.cpp (original)
+++ trunk/src/ai/ai.cpp Thu Jun  4 21:36:36 2009
@@ -73,7 +73,7 @@
 
 
 /** Sample ai, with simple strategy. */
-class sample_ai : public ai::readwrite_context_proxy, public ai_interface {
+class sample_ai : public ai::readwrite_context_proxy, public ai::interface {
 public:
        sample_ai(ai::readwrite_context &context)
                : recursion_counter_(context.get_recursion_count()) {
@@ -274,7 +274,7 @@
        if (formula_ai_ != NULL){
                formula_ai_->new_turn();
        }
-       ai_interface::new_turn();
+       ai::interface::new_turn();
 }
 
 std::string ai_default::describe_self(){

Modified: trunk/src/ai/ai.hpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/ai.hpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/ai.hpp (original)
+++ trunk/src/ai/ai.hpp Thu Jun  4 21:36:36 2009
@@ -28,7 +28,7 @@
 class formula_ai;
 
 /** A trivial ai that sits around doing absolutely nothing. */
-class idle_ai : public ai::readwrite_context_proxy, public ai_interface {
+class idle_ai : public ai::readwrite_context_proxy, public ai::interface {
 public:
        idle_ai(ai::readwrite_context &context);
        void play_turn();
@@ -39,7 +39,7 @@
        ai::recursion_counter recursion_counter_;
 };
 
-class ai_default : public virtual ai::default_ai_context_proxy, public 
ai_interface, public game_logic::formula_callable {
+class ai_default : public virtual ai::default_ai_context_proxy, public 
ai::interface, public game_logic::formula_callable {
 public:
        typedef ai::move_map move_map;
        typedef map_location location;//will get rid of this later
@@ -142,7 +142,7 @@
        bool threats_found_;
 
        /**
-        * Our own version of 'move_unit'. It is like the version in 
ai_interface,
+        * Our own version of 'move_unit'. It is like the version in 
readwrite_context
         * however if it is the leader moving, it will first attempt 
recruitment.
         */
        location move_unit(location from, location to, 
std::map<location,paths>& possible_moves);

Modified: trunk/src/ai/ai2.hpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/ai2.hpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/ai2.hpp (original)
+++ trunk/src/ai/ai2.hpp Thu Jun  4 21:36:36 2009
@@ -25,7 +25,7 @@
 
 namespace ai {
 
-class ai2 : public readwrite_context_proxy, public ai_interface {
+class ai2 : public readwrite_context_proxy, public interface {
 public:
        ai2(readwrite_context &context)
                : recursion_counter_(context.get_recursion_count())

Modified: trunk/src/ai/ai_dfool.hpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/ai_dfool.hpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/ai_dfool.hpp (original)
+++ trunk/src/ai/ai_dfool.hpp Thu Jun  4 21:36:36 2009
@@ -99,7 +99,7 @@
    * does not target units that it has not "seen",
    * and does not make decisions based on unseen units.
    */
-  class dfool_ai : public ai::readwrite_context_proxy, public ai_interface {
+  class dfool_ai : public ai::readwrite_context_proxy, public ai::interface {
   public:
        dfool_ai(ai::readwrite_context &context)
                : recursion_counter_(context.get_recursion_count()), 
unit_memory_(current_team().ai_memory())

Modified: trunk/src/ai/ai_interface.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/ai_interface.cpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/ai_interface.cpp (original)
+++ trunk/src/ai/ai_interface.cpp Thu Jun  4 21:36:36 2009
@@ -19,11 +19,14 @@
 
 #include "ai_interface.hpp"
 
+namespace ai {
+
 // =======================================================================
 //
 // =======================================================================
-std::string ai_interface::describe_self() const
+std::string interface::describe_self() const
 {
        return "? [ai]";
 }
 
+} //end of namespace ai

Modified: trunk/src/ai/ai_interface.hpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/ai_interface.hpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/ai_interface.hpp (original)
+++ trunk/src/ai/ai_interface.hpp Thu Jun  4 21:36:36 2009
@@ -23,14 +23,16 @@
 #include "../formula_callable.hpp"
 #include "game_info.hpp"
 
-class ai_interface {
+namespace ai {
+
+class interface {
 public:
        /**
         * The constructor.
         */
-       ai_interface() {
+       interface() {
        }
-       virtual ~ai_interface() {}
+       virtual ~interface() {}
 
        /**
         * Function that is called when the AI must play its turn.
@@ -63,4 +65,6 @@
 
 };
 
+} //end of namespace ai
+
 #endif

Modified: trunk/src/ai/ai_manager.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/ai_manager.cpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/ai_manager.cpp (original)
+++ trunk/src/ai/ai_manager.cpp Thu Jun  4 21:36:36 2009
@@ -98,7 +98,7 @@
 }
 
 
-ai_interface& holder::get_ai_ref( int side )
+interface& holder::get_ai_ref( int side )
 {
        if (this->ai_ == NULL) {
                this->init(side);
@@ -108,7 +108,7 @@
        return *this->ai_;
 }
 
-ai_interface& holder::get_ai_ref()
+interface& holder::get_ai_ref()
 {
        return get_ai_ref(this->side_);
 }
@@ -202,7 +202,7 @@
        return true;
 }
 
-ai_interface* holder::create_ai( int side )
+interface* holder::create_ai( int side )
 {
        assert (side > 0);
        assert (default_ai_context_!=NULL);
@@ -358,7 +358,7 @@
        }
 
        if (!should_intercept(str)){
-               ai_interface& ai = get_command_ai(side);
+               interface& ai = get_command_ai(side);
                return ai.evaluate(str);
        }
 
@@ -549,7 +549,7 @@
 }
 
 
-ai_interface* manager::create_transient_ai( const std::string 
&ai_algorithm_type, default_ai_context *ai_context )
+interface* manager::create_transient_ai( const std::string &ai_algorithm_type, 
default_ai_context *ai_context )
 {
        assert(ai_context!=NULL);
        //@todo 1.7 modify this code to use a 'factory lookup' pattern -
@@ -561,7 +561,7 @@
        //: To add an AI of your own, put
        //      if(ai_algorithm_type == "my_ai") {
        //              LOG_AI_MANAGER << "Creating new AI of type [" << 
"my_ai" << "]"<< std::endl;
-       //              ai_interface *a = new my_ai(*ai_context);
+       //              interface *a = new my_ai(*ai_context);
        //              a->on_create();
        //              return a;
        //      }
@@ -569,35 +569,35 @@
 
        //if(ai_algorithm_type == manager::AI_TYPE_SAMPLE_AI) {
        //  LOG_AI_MANAGER << "Creating new AI of type [" << 
manager::AI_TYPE_IDLE_AI << "]"<< std::endl;
-       //      ai_interface *a = new sample_ai(*ai_context);
+       //      interface *a = new sample_ai(*ai_context);
        //      a->on_create();
        //      return a;
        //}
 
        if(ai_algorithm_type == manager::AI_TYPE_IDLE_AI) {
                LOG_AI_MANAGER << "Creating new AI of type [" << 
manager::AI_TYPE_IDLE_AI << "]"<< std::endl;
-               ai_interface *a = new idle_ai(*ai_context);
+               interface *a = new idle_ai(*ai_context);
                a->on_create();
                return a;
        }
 
        if(ai_algorithm_type == manager::AI_TYPE_FORMULA_AI) {
                LOG_AI_MANAGER << "Creating new AI of type [" << 
manager::AI_TYPE_FORMULA_AI << "]"<< std::endl;
-               ai_interface *a = new formula_ai(*ai_context);
+               interface *a = new formula_ai(*ai_context);
                a->on_create();
                return a;
        }
 
        if(ai_algorithm_type == manager::AI_TYPE_DFOOL_AI) {
                LOG_AI_MANAGER << "Creating new AI of type [" << 
manager::AI_TYPE_DFOOL_AI << "]"<< std::endl;
-               ai_interface *a = new dfool::dfool_ai(*ai_context);
+               interface *a = new dfool::dfool_ai(*ai_context);
                a->on_create();
                return a;
        }
 
        if(ai_algorithm_type == manager::AI_TYPE_AI2) {
                LOG_AI_MANAGER << "Creating new AI of type [" << 
manager::AI_TYPE_AI2 << "]"<< std::endl;
-               ai_interface *a = new ai2(*ai_context);
+               interface *a = new ai2(*ai_context);
                a->on_create();
                return a;
        }
@@ -605,7 +605,7 @@
 
        if(ai_algorithm_type == manager::AI_TYPE_COMPOSITE_AI) {
                LOG_AI_MANAGER << "Creating new AI of type [" << 
manager::AI_TYPE_COMPOSITE_AI << "]"<< std::endl;
-               ai_interface *a = new composite_ai::ai_composite(*ai_context);
+               interface *a = new composite_ai::ai_composite(*ai_context);
                a->on_create();
                return a;
        }
@@ -616,7 +616,7 @@
        }
 
        LOG_AI_MANAGER  << "Creating new AI of type [" << 
manager::AI_TYPE_DEFAULT << "]"<< std::endl;
-       ai_interface *a = new ai_default(*ai_context);
+       interface *a = new ai_default(*ai_context);
        a->on_create();
        return a;
 }
@@ -747,7 +747,7 @@
        last_interact_ = 0;
        num_interact_ = 0;
        const int turn_start_time = SDL_GetTicks();
-       ai_interface& ai_obj = get_active_ai_for_side(side);
+       interface& ai_obj = get_active_ai_for_side(side);
        ai_obj.play_turn();
        const int turn_end_time= SDL_GetTicks();
        DBG_AI_MANAGER << "side " << side << ": number of user interactions: 
"<<num_interact_<<std::endl;
@@ -818,29 +818,29 @@
 // AI POINTERS
 // =======================================================================
 
-ai_interface& manager::get_active_ai_for_side( int side )
+interface& manager::get_active_ai_for_side( int side )
 {
        return get_active_ai_holder_for_side(side).get_ai_ref();
 }
 
 
-ai_interface& manager::get_or_create_active_ai_for_side_without_fallback( int 
side, const std::string& ai_algorithm_type )
+interface& manager::get_or_create_active_ai_for_side_without_fallback( int 
side, const std::string& ai_algorithm_type )
 {
        holder& ai_holder = 
get_or_create_active_ai_holder_for_side_without_fallback(side,ai_algorithm_type);
        return ai_holder.get_ai_ref();
 }
 
-ai_interface& manager::get_command_ai( int side )
+interface& manager::get_command_ai( int side )
 {
        holder& ai_holder = get_command_ai_holder(side);
-       ai_interface& ai = ai_holder.get_ai_ref(side);
+       interface& ai = ai_holder.get_ai_ref(side);
        return ai;
 }
 
-ai_interface& manager::get_fallback_ai( int side )
+interface& manager::get_fallback_ai( int side )
 {
        holder& ai_holder = get_fallback_ai_holder(side);
-       ai_interface& ai = ai_holder.get_ai_ref(side);
+       interface& ai = ai_holder.get_ai_ref(side);
        return ai;
 }
 

Modified: trunk/src/ai/ai_manager.hpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/ai_manager.hpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/ai_manager.hpp (original)
+++ trunk/src/ai/ai_manager.hpp Thu Jun  4 21:36:36 2009
@@ -33,9 +33,11 @@
 #include <vector>
 #include <deque>
 
-class ai_interface;
 
 namespace ai {
+
+class interface;
+
 /**
  * Base class that holds the AI and current AI parameters.
  * It is an implementation detail.
@@ -49,8 +51,8 @@
 
        virtual ~holder();
 
-       ai_interface& get_ai_ref();
-       ai_interface& get_ai_ref( int side );
+       interface& get_ai_ref();
+       interface& get_ai_ref( int side );
 
        const std::string& get_ai_algorithm_type() const;
        void set_ai_algorithm_type(const std::string& ai_algorithm_type);
@@ -77,7 +79,7 @@
        bool is_mandate_ok();
 
 private:
-       ai_interface *ai_;
+       interface *ai_;
        side_context *side_context_;
        readonly_context *readonly_context_;
        readwrite_context *readwrite_context_;
@@ -89,7 +91,7 @@
        std::vector<config> ai_parameters_;
        int side_;
 
-       ai_interface* create_ai( int side );
+       interface* create_ai( int side );
 };
 
 /**
@@ -274,7 +276,7 @@
         * @param context context in which this ai is created 
         * @return the reference to the created AI
         */
-       static ai_interface* create_transient_ai( const std::string& 
ai_algorithm_type, default_ai_context *ai_context);
+       static interface* create_transient_ai( const std::string& 
ai_algorithm_type, default_ai_context *ai_context);
 
 
        /**
@@ -547,24 +549,24 @@
         * @return a reference to the active AI.
         * @note This reference may become invalid after specific manager 
operations.
         */
-       static ai_interface& get_active_ai_for_side( int side );
+       static interface& get_active_ai_for_side( int side );
 
 
        /**
         * Gets the command AI for the specified @a side.
         */
-       static ai_interface& get_command_ai( int side );
+       static interface& get_command_ai( int side );
 
 
        /**
         * Gets the fallback AI for the specified @a side.
         */
-       static ai_interface& get_fallback_ai( int side );
+       static interface& get_fallback_ai( int side );
 
        /**
         * Gets or creates active AI for specified @a side without fallback.
         */
-       static ai_interface& get_or_create_active_ai_for_side_without_fallback( 
int side, const std::string& ai_algorithm_type );
+       static interface& get_or_create_active_ai_for_side_without_fallback( 
int side, const std::string& ai_algorithm_type );
 
 
 };

Modified: trunk/src/ai/composite/ai.hpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/composite/ai.hpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/composite/ai.hpp (original)
+++ trunk/src/ai/composite/ai.hpp Thu Jun  4 21:36:36 2009
@@ -36,7 +36,7 @@
 
 namespace composite_ai {
 
-class ai_composite : public composite_ai_context, public virtual 
default_ai_context_proxy, public ai_interface {
+class ai_composite : public composite_ai_context, public virtual 
default_ai_context_proxy, public interface {
 public:
 
 

Modified: trunk/src/ai/formula_ai.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/formula_ai.cpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/formula_ai.cpp (original)
+++ trunk/src/ai/formula_ai.cpp Thu Jun  4 21:36:36 2009
@@ -1857,7 +1857,7 @@
        if(!formula_) {
                
if(get_recursion_count()<ai::recursion_counter::MAX_COUNTER_VALUE) {
                        LOG_AI << "Falling back to default AI.\n";
-                       util::scoped_ptr< ai_interface > fallback( 
ai::manager::create_transient_ai(ai::manager::AI_TYPE_DEFAULT, this));
+                       util::scoped_ptr< ai::interface > fallback( 
ai::manager::create_transient_ai(ai::manager::AI_TYPE_DEFAULT, this));
                        if (fallback != NULL){
                                fallback->play_turn();
                        }
@@ -2182,7 +2182,7 @@
                                } else
                                {
                                        LOG_AI << "Explicit fallback to: " << 
fallback_command->key() << std::endl;
-                                       util::scoped_ptr< ai_interface > 
fallback ( ai::manager::create_transient_ai(fallback_command->key(), this));
+                                       util::scoped_ptr< ai::interface > 
fallback ( ai::manager::create_transient_ai(fallback_command->key(), this));
                                        if(fallback != NULL) {
                                                fallback->play_turn();
                                        }

Modified: trunk/src/ai/testing/stage_fallback.hpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/ai/testing/stage_fallback.hpp?rev=36057&r1=36056&r2=36057&view=diff
==============================================================================
--- trunk/src/ai/testing/stage_fallback.hpp (original)
+++ trunk/src/ai/testing/stage_fallback.hpp Thu Jun  4 21:36:36 2009
@@ -42,7 +42,8 @@
 
 private:
        const config &cfg_;
-       ai_interface *fallback_ai_;
+
+       ai::interface *fallback_ai_;
 };
 
 


_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits

Reply via email to