BWAPI
Undermind/proxy/cpp/include/BWAPI/TilePosition.h
Go to the documentation of this file.
00001 #pragma once
00002 
00003 namespace BWAPI
00004 {
00005   class Position;
00006 
00007   // TODO: Add doxygen documentation
00008   class TilePosition
00009   {
00010     public :
00011       TilePosition();
00012       explicit TilePosition(const Position& position);
00013       TilePosition(int x, int y);
00014       bool operator == (const TilePosition& TilePosition) const;
00015       bool operator != (const TilePosition& TilePosition) const;
00016       bool operator  < (const TilePosition& TilePosition) const;
00017       bool isValid() const;
00018       TilePosition operator+(const TilePosition& position) const;
00019       TilePosition operator-(const TilePosition& position) const;
00020       TilePosition& makeValid();
00021       TilePosition& operator+=(const TilePosition& position);
00022       TilePosition& operator-=(const TilePosition& position);
00023       double getDistance(const TilePosition& position) const;
00024       double getLength() const;
00025       bool   hasPath(const TilePosition& destination) const;
00026       int& x();
00027       int& y();
00028       int x() const;
00029       int y() const;
00030     private :
00031       int _x;
00032       int _y;
00033   };
00034   namespace TilePositions
00035   {
00036     extern const TilePosition Invalid;
00037     extern const TilePosition None;
00038     extern const TilePosition Unknown;
00039   }
00040 };
00041 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines