BWAPI
SnippyHolloW-BroodwarBotQ-f01ab56/src/Macro/BorderManager.h
Go to the documentation of this file.
00001 #pragma once
00002 #include <BWAPI.h>
00003 #include <BWTA.h>
00004 
00005 class BorderManager
00006 {
00007   public:
00008     static BorderManager* create();
00009     static void destroy();
00010     void addMyBase(BWTA::BaseLocation* location);
00011     void removeMyBase(BWTA::BaseLocation* location);
00012     const std::set<BWTA::Chokepoint*>& getMyBorder() const;
00013     const std::set<BWTA::Region*>& getMyRegions() const;
00014     const std::set<BWTA::Chokepoint*>& getEnemyBorder() const;
00015     void update();
00016   private:
00017     BorderManager();
00018     ~BorderManager();
00019     void recalculateBorders();
00020     std::set<BWTA::BaseLocation*> myBases;
00021     std::set<BWTA::BaseLocation*> enemyBases;
00022     std::set<BWTA::Region*> myRegions;
00023     std::set<BWTA::Region*> enemyRegions;
00024     std::set<BWTA::Chokepoint*> myBorder;
00025     std::set<BWTA::Chokepoint*> enemyBorder;
00026 };
00027 
00028 extern BorderManager* TheBorderManager;
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines