Data Structures | Defines | Typedefs | Variables

linkgraph.h File Reference

Declaration of link graph classes used for cargo distribution. More...

#include "../core/pool_type.hpp"
#include "../core/smallvec_type.hpp"
#include "../core/smallmatrix_type.hpp"
#include "../station_base.h"
#include "../cargo_type.h"
#include "../thread/thread.h"
#include "../settings_type.h"
#include "../date_func.h"
#include "linkgraph_type.h"
#include <list>
#include <set>
#include "../core/smallmatrix_type.hpp"
#include "../thread/thread.h"

Go to the source code of this file.

Data Structures

class  GraphItem
class  Node
 Node of the link graph. More...
class  Edge
 An edge in the link graph. More...
class  ComponentHandler
 A handler doing "something" on a link graph component. More...
class  LinkGraph
 A connected component of a link graph. More...
class  EdgeAnnotation
class  NodeAnnotation
class  LinkGraphJob
class  LinkGraphSchedule
class  Path
 A leg of a path in the link graph. More...

Defines

#define FOR_ALL_LINK_GRAPHS(var)   FOR_ALL_ITEMS_FROM(LinkGraph, link_graph_index, var, 0)
#define FOR_ALL_LINK_GRAPH_JOBS(var)   FOR_ALL_ITEMS_FROM(LinkGraphJob, link_graph_job_index, var, 0)

Typedefs

typedef std::set< Path * > PathSet
typedef std::map< NodeID, Path * > PathViaMap
typedef Pool< LinkGraph,
LinkGraphID, 32, 0xFFFFFF > 
LinkGraphPool
 Type of the pool for link graph components.
typedef Pool< LinkGraphJob,
LinkGraphJobID, 32, 0xFFFFFF > 
LinkGraphJobPool
 Type of the pool for link graph jobs.

Variables

LinkGraphPool _link_graph_pool
 The actual pool with link graphs.
LinkGraphJobPool _link_graph_job_pool
 The actual pool with link graph jobs.

Detailed Description

Declaration of link graph classes used for cargo distribution.

Definition in file linkgraph.h.


Typedef Documentation

typedef Pool<LinkGraphJob, LinkGraphJobID, 32, 0xFFFFFF> LinkGraphJobPool

Type of the pool for link graph jobs.

Definition at line 262 of file linkgraph.h.

typedef Pool<LinkGraph, LinkGraphID, 32, 0xFFFFFF> LinkGraphPool

Type of the pool for link graph components.

Each station can be in at up to 32 link graphs. So we allow for plenty of them to be created.

Definition at line 120 of file linkgraph.h.


Variable Documentation

The actual pool with link graph jobs.

The actual pool with link graphs.