osrm-backend/include/partitioner/recursive_bisection.hpp
Mateusz Loskot 8114104a43 Rename namespace partition to partitioner
Rename module partition to partitioner.
This cultivates naming used in existing modules like extractor,
customizer, etc. - noun vs verb (word partition is both though).
2018-02-02 11:07:18 +01:00

39 lines
977 B
C++

#ifndef OSRM_PARTITIONER_RECURSIVE_BISECTION_HPP_
#define OSRM_PARTITIONER_RECURSIVE_BISECTION_HPP_
#include "partitioner/bisection_graph.hpp"
#include "partitioner/recursive_bisection_state.hpp"
#include "util/typedefs.hpp"
#include <cstddef>
#include <vector>
namespace osrm
{
namespace partitioner
{
class RecursiveBisection
{
public:
RecursiveBisection(BisectionGraph &bisection_graph,
const std::size_t maximum_cell_size,
const double balance,
const double boundary_factor,
const std::size_t num_optimizing_cuts,
const std::size_t small_component_size);
const std::vector<BisectionID> &BisectionIDs() const;
std::uint32_t SCCDepth() const;
private:
BisectionGraph &bisection_graph;
RecursiveBisectionState internal_state;
};
} // namespace partitioner
} // namespace osrm
#endif // OSRM_PARTITIONER_RECURSIVE_BISECTION_HPP_