This repository has been archived on 2023-07-11. You can view files and clone it, but cannot push or open issues or pull requests.
BWMirror-Generator/bwapi-master/Position.h
2014-08-05 10:43:14 +02:00

44 lines
1.2 KiB
C++

#pragma once
namespace BWAPI
{
class TilePosition;
// TODO: Add doxygen documentation
class Position
{
public :
Position();
explicit Position(const TilePosition& position);
Position(int x, int y);
bool operator == (const Position& position) const;
bool operator != (const Position& position) const;
bool operator < (const Position& position) const;
operator bool() const;
bool isValid() const;
Position operator+(const Position& position) const;
Position operator-(const Position& position) const;
Position& makeValid();
Position& operator+=(const Position& position);
Position& operator-=(const Position& position);
double getDistance(const Position& position) const;
int getApproxDistance(const Position& position) const;
double getLength() const;
bool hasPath(const Position& destination) const;
int& x();
int& y();
int x() const;
int y() const;
private :
int _x;
int _y;
};
namespace Positions
{
extern const Position Invalid;
extern const Position None;
extern const Position Unknown;
}
};