1#ifndef FPMAS_GRID_API_H
2#define FPMAS_GRID_API_H
10namespace fpmas {
namespace api {
namespace model {
58 bool operator<(
const DiscretePoint& p1,
const DiscretePoint& p2);
66 bool operator==(
const DiscretePoint& p1,
const DiscretePoint& p2);
70 bool operator!=(
const DiscretePoint& p1,
const DiscretePoint& p2);
145 template<
typename Gr
idCellType>
150 std::is_base_of<api::model::GridCell, GridCellType>::value,
151 "fpmas::api::model::GridCell must be a base of the specified GridCell"
160 template<
typename CellType>
191 std::string
to_string(
const api::model::DiscretePoint& point);
193 namespace api {
namespace model {
201 std::ostream&
operator<<(std::ostream& os,
const DiscretePoint& point);
Definition: spatial_model.h:90
virtual void moveTo(DiscretePoint point)=0
virtual DiscretePoint locationPoint() const =0
virtual CellType * build(DiscretePoint location)=0
virtual DiscretePoint location() const =0
Definition: spatial_model.h:656
Definition: spatial_model.h:234
bool operator==(const DiscretePoint &p1, const DiscretePoint &p2)
Definition: grid.cpp:20
bool operator<(const DiscretePoint &p1, const DiscretePoint &p2)
Definition: grid.cpp:14
SpatialAgentMapping< GridCell > GridAgentMapping
Definition: grid.h:181
std::ostream & operator<<(std::ostream &os, const DiscretePoint &point)
Definition: grid.cpp:28
float euclidian_distance(const DiscretePoint &p1, const DiscretePoint &p2)
Definition: grid.cpp:10
bool operator!=(const DiscretePoint &p1, const DiscretePoint &p2)
Definition: grid.cpp:24
long DiscreteCoordinate
Definition: grid.h:15
std::string to_string(const api::graph::DistributedId &id)
Definition: distributed_id.cpp:4
DiscretePoint(DiscreteCoordinate x, DiscreteCoordinate y)
Definition: grid.h:43
DiscreteCoordinate x
Definition: grid.h:25
DiscreteCoordinate y
Definition: grid.h:29
DiscretePoint()
Definition: grid.h:36