File ReservationTable.h#

Definition (server/inc/backup_planners/ReservationTable.h)#

Includes#

  • utils/BasicGraph.h

  • utils/States.h

Included By#

Classes#

Full File Listing#

class ReservationTable#

Public Functions

inline void clear()#
inline void copy(const ReservationTable &other)#
void build(const vector<Path*> &paths, const list<tuple<int, int, int>> &initial_constraints, const unordered_set<int> &high_priority_agents, int current_agent, int start_location)#
void build(const vector<Path> &paths, const list<tuple<int, int, int>> &initial_constraints, int current_agent)#
void build(const vector<Path*> &paths, const list<tuple<int, int, int>> &initial_constraints, const list<Constraint> &constraints, int current_agent)#
void insertPath2CT(const Path &path)#
void print() const#
void printCT(size_t location) const#
list<Interval> getSafeIntervals(int location, int lower_bound, int upper_bound)#
list<Interval> getSafeIntervals(int from, int to, int lower_bound, int upper_bound)#
int getHoldingTimeFromSIT(int location)#
Interval getFirstSafeInterval(int location)#
bool findSafeInterval(Interval &interval, int location, int t_min)#
bool canWaitUntil(int location, int desired_t_min, int desired_t_max)#
bool isConstrained(int curr_id, int next_id, int next_timestep) const#
bool isConflicting(int curr_id, int next_id, int next_timestep) const#
int getHoldingTimeFromCT(int location) const#
set<int> getConstrainedTimesteps(int location) const#
inline ReservationTable(const BasicGraph &G)#

Public Members

size_t map_size#
int num_of_agents#
int k_robust#
int window#
bool use_cat#
bool hold_endpoints = false#
bool prioritize_start#
double runtime#

Private Functions

void updateSIT(size_t location)#
void mergeIntervals(list<Interval> &intervals) const#
void insertConstraint2SIT(int location, int t_min, int t_max)#
void insertSoftConstraint2SIT(int location, int t_min, int t_max)#
void insertConstraints4starts(const vector<Path*> &paths, int current_agent, int start_location)#
void insertPath2CAT(const Path &path)#
void addInitialConstraints(const list<tuple<int, int, int>> &initial_constraints, int current_agent)#
inline int getEdgeIndex(int from, int to) const#
inline pair<int, int> getEdge(int index) const#

Private Members

const BasicGraph &G#
unordered_map<size_t, list<pair<int, int>>> ct#
vector<vector<bool>> cat#
unordered_map<size_t, list<Interval>> sit#