BWAPI
trunk/bwapi/include/BWAPI/Client/RegionImpl.h
Go to the documentation of this file.
00001 #pragma once
00002 #include <BWAPI/Region.h>
00003 #include <BWAPI/Position.h>
00004 #include <BWAPI/Client/RegionData.h>
00005 
00006 namespace BWAPI
00007 {
00008   class RegionImpl : public Region
00009   {
00010   private:
00011     RegionData *self;
00012     std::set<BWAPI::Region*> neighbors;
00013     BWAPI::Region *closestAccessibleRgn;
00014     BWAPI::Region *closestInaccessibleRgn;
00015   public:
00016     RegionImpl(int index);
00017     void setNeighbors();
00018     virtual int getID() const;
00019     virtual int getRegionGroupID() const;
00020     virtual BWAPI::Position getCenter() const;
00021     virtual bool isHigherGround() const;
00022     virtual int getDefensePriority() const;
00023     virtual bool isWalkable() const;
00024 
00025     virtual const std::set<BWAPI::Region*> &getNeighbors() const;
00026 
00027     virtual int getBoundsLeft() const;
00028     virtual int getBoundsTop() const;
00029     virtual int getBoundsRight() const;
00030     virtual int getBoundsBottom() const;
00031 
00032     virtual BWAPI::Region *getClosestAccessibleRegion() const;
00033     virtual BWAPI::Region *getClosestInaccessibleRegion() const;
00034 
00035     virtual int getDistance(BWAPI::Region *other) const;
00036   };
00037 
00038 };
00039 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines