|
|
|
@ -260,7 +260,7 @@ void MultiCommodityFlow::Dijkstra(NodeID source_node, PathVector &paths)
|
|
|
|
|
{
|
|
|
|
|
typedef std::set<Tannotation *, typename Tannotation::Comparator> AnnoSet;
|
|
|
|
|
Tedge_iterator iter(this->job);
|
|
|
|
|
uint size = this->job.Size();
|
|
|
|
|
uint16 size = this->job.Size();
|
|
|
|
|
AnnoSet annos;
|
|
|
|
|
paths.resize(size, nullptr);
|
|
|
|
|
for (NodeID node = 0; node < size; ++node) {
|
|
|
|
@ -473,7 +473,7 @@ bool MCF1stPass::EliminateCycles(PathVector &path, NodeID origin_id, NodeID next
|
|
|
|
|
bool MCF1stPass::EliminateCycles()
|
|
|
|
|
{
|
|
|
|
|
bool cycles_found = false;
|
|
|
|
|
uint size = this->job.Size();
|
|
|
|
|
uint16 size = this->job.Size();
|
|
|
|
|
PathVector path(size, nullptr);
|
|
|
|
|
for (NodeID node = 0; node < size; ++node) {
|
|
|
|
|
/* Starting at each node in the graph find all cycles involving this
|
|
|
|
@ -491,7 +491,7 @@ bool MCF1stPass::EliminateCycles()
|
|
|
|
|
MCF1stPass::MCF1stPass(LinkGraphJob &job) : MultiCommodityFlow(job)
|
|
|
|
|
{
|
|
|
|
|
PathVector paths;
|
|
|
|
|
uint size = job.Size();
|
|
|
|
|
uint16 size = job.Size();
|
|
|
|
|
uint accuracy = job.Settings().accuracy;
|
|
|
|
|
bool more_loops;
|
|
|
|
|
std::vector<bool> finished_sources(size);
|
|
|
|
@ -540,7 +540,7 @@ MCF2ndPass::MCF2ndPass(LinkGraphJob &job) : MultiCommodityFlow(job)
|
|
|
|
|
{
|
|
|
|
|
this->max_saturation = UINT_MAX; // disable artificial cap on saturation
|
|
|
|
|
PathVector paths;
|
|
|
|
|
uint size = job.Size();
|
|
|
|
|
uint16 size = job.Size();
|
|
|
|
|
uint accuracy = job.Settings().accuracy;
|
|
|
|
|
bool demand_left = true;
|
|
|
|
|
std::vector<bool> finished_sources(size);
|
|
|
|
|