Commit 6f84804e authored by thillux's avatar thillux
Browse files

cleanups again

parent 973e3f21
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -32,8 +32,10 @@

#include <lemon/list_graph.h>
#include <memory>
#include <list>

typedef lemon::ListGraph Graph;
typedef std::list<Graph::Edge> EdgeList;
typedef std::shared_ptr<Graph> Graph_Ptr;

#endif
+5 −8
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@
#include "geo/GeometricHelpers.hpp"
#include "geo/SeaCableLandingPoint.hpp"
#include "geo/SeaCableNode.hpp"
#include "topo/Graph.hpp"
#include "util/Util.hpp"
#include <cassert>
#include <cmath>
@@ -60,15 +61,14 @@ BetaSkeletonFilter::~BetaSkeletonFilter() {

void BetaSkeletonFilter::generalGabrielFilter() {
    using namespace lemon;
    typedef std::list<Graph::Edge> Edgelist;
    Edgelist edges_to_delete;
    EdgeList edges_to_delete;

    for (Graph::EdgeIt edge(*_graph); edge != lemon::INVALID; ++edge) {
        if (edge != INVALID && !isBetaSkeletonEdgeGreaterEqualThanOne(edge, 1.0))
            edges_to_delete.push_back(edge);
    }

    for (Edgelist::iterator edge = edges_to_delete.begin(); edge != edges_to_delete.end(); ++edge)
    for (EdgeList::iterator edge = edges_to_delete.begin(); edge != edges_to_delete.end(); ++edge)
        _graph->erase(*edge);
}

@@ -89,8 +89,7 @@ void BetaSkeletonFilter::perCountryBetaFilter() {
    }

    // create work items
    typedef std::list<Graph::Edge> Edgelist;
    Edgelist edges_to_delete;
    EdgeList edges_to_delete;
    std::list<std::pair<Graph::Node, Graph::Node>> edges_to_add;

    std::unique_ptr<Config> config(new Config);
@@ -132,7 +131,7 @@ void BetaSkeletonFilter::perCountryBetaFilter() {
        _graph->addEdge(pair.first, pair.second);

    // erase edges
    for (Edgelist::iterator edge = edges_to_delete.begin(); edge != edges_to_delete.end(); ++edge)
    for (EdgeList::iterator edge = edges_to_delete.begin(); edge != edges_to_delete.end(); ++edge)
        _graph->erase(*edge);
}

@@ -140,8 +139,6 @@ void BetaSkeletonFilter::filterBetaSkeletonEdges() {
    // create global gabriel graph
    generalGabrielFilter();

    // -------------------------------------------------------------------------

    // per country filtering with beta skeleton
    perCountryBetaFilter();
}
+5 −7
Original line number Diff line number Diff line
@@ -38,11 +38,11 @@
#include "geo/GeometricHelpers.hpp"
#include "geo/GeographicPosition.hpp"
#include "geo/SeaCableLandingPoint.hpp"
#include "topo/Graph.hpp"
#include "util/Util.hpp"
#include <algorithm>
#include <cassert>
#include <cmath>
#include <lemon/list_graph.h>
#include <numeric>

PopulationDensityFilter::PopulationDensityFilter(BaseTopology_Ptr baseTopo)
@@ -62,8 +62,7 @@ void PopulationDensityFilter::filter(void) {
    // iterate over edges
    Graph& graph = *_baseTopo->getGraph();
    auto& nodeGeoNodeMap = *_baseTopo->getNodeMap();
    typedef std::list<Graph::Edge> Edgelist;
    Edgelist edges_to_delete;
    EdgeList edges_to_delete;

    auto isValidNode = [](GeographicNode_Ptr& ptr) -> bool {
        CityNode* n1 = dynamic_cast<CityNode*>(ptr.get());
@@ -133,7 +132,7 @@ void PopulationDensityFilter::filter(void) {

    BOOST_LOG_TRIVIAL(info) << edges_to_delete.size() << " edges deleted by population density filter";

    for (Edgelist::iterator edge = edges_to_delete.begin(); edge != edges_to_delete.end(); ++edge)
    for (EdgeList::iterator edge = edges_to_delete.begin(); edge != edges_to_delete.end(); ++edge)
        graph.erase(*edge);
}

@@ -148,8 +147,7 @@ void PopulationDensityFilter::filterByLength(void) {
    // iterate over edges
    Graph& graph = *_baseTopo->getGraph();
    auto& nodeGeoNodeMap = *_baseTopo->getNodeMap();
    typedef std::list<Graph::Edge> Edgelist;
    Edgelist edges_to_delete;
    EdgeList edges_to_delete;

    auto isValidNode = [](GeographicNode_Ptr& ptr) -> bool {
        CityNode* n1 = dynamic_cast<CityNode*>(ptr.get());
@@ -199,6 +197,6 @@ void PopulationDensityFilter::filterByLength(void) {
        }
    }
    // erase edges
    for (Edgelist::iterator edge = edges_to_delete.begin(); edge != edges_to_delete.end(); ++edge)
    for (EdgeList::iterator edge = edges_to_delete.begin(); edge != edges_to_delete.end(); ++edge)
        graph.erase(*edge);
}