Rename BinaryHeap to QueryHeap
This commit is contained in:
parent
358aebec4d
commit
07c7cb3c6c
@ -1,7 +1,7 @@
|
|||||||
#ifndef OSRM_CONTRACTOR_CONTRACTOR_HEAP_HPP_
|
#ifndef OSRM_CONTRACTOR_CONTRACTOR_HEAP_HPP_
|
||||||
#define OSRM_CONTRACTOR_CONTRACTOR_HEAP_HPP_
|
#define OSRM_CONTRACTOR_CONTRACTOR_HEAP_HPP_
|
||||||
|
|
||||||
#include "util/binary_heap.hpp"
|
#include "util/query_heap.hpp"
|
||||||
#include "util/typedefs.hpp"
|
#include "util/typedefs.hpp"
|
||||||
#include "util/xor_fast_hash_storage.hpp"
|
#include "util/xor_fast_hash_storage.hpp"
|
||||||
|
|
||||||
@ -18,7 +18,7 @@ struct ContractorHeapData
|
|||||||
bool target = false;
|
bool target = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
using ContractorHeap = util::BinaryHeap<NodeID,
|
using ContractorHeap = util::QueryHeap<NodeID,
|
||||||
NodeID,
|
NodeID,
|
||||||
EdgeWeight,
|
EdgeWeight,
|
||||||
ContractorHeapData,
|
ContractorHeapData,
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
#include "partition/cell_storage.hpp"
|
#include "partition/cell_storage.hpp"
|
||||||
#include "partition/multi_level_partition.hpp"
|
#include "partition/multi_level_partition.hpp"
|
||||||
#include "util/binary_heap.hpp"
|
#include "util/query_heap.hpp"
|
||||||
|
|
||||||
#include <tbb/enumerable_thread_specific.h>
|
#include <tbb/enumerable_thread_specific.h>
|
||||||
|
|
||||||
@ -24,7 +24,7 @@ class CellCustomizer
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
using Heap =
|
using Heap =
|
||||||
util::BinaryHeap<NodeID, NodeID, EdgeWeight, HeapData, util::ArrayStorage<NodeID, int>>;
|
util::QueryHeap<NodeID, NodeID, EdgeWeight, HeapData, util::ArrayStorage<NodeID, int>>;
|
||||||
using HeapPtr = tbb::enumerable_thread_specific<Heap>;
|
using HeapPtr = tbb::enumerable_thread_specific<Heap>;
|
||||||
|
|
||||||
CellCustomizer(const partition::MultiLevelPartition &partition) : partition(partition) {}
|
CellCustomizer(const partition::MultiLevelPartition &partition) : partition(partition) {}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
#include <boost/thread/tss.hpp>
|
#include <boost/thread/tss.hpp>
|
||||||
|
|
||||||
#include "engine/algorithm.hpp"
|
#include "engine/algorithm.hpp"
|
||||||
#include "util/binary_heap.hpp"
|
#include "util/query_heap.hpp"
|
||||||
#include "util/typedefs.hpp"
|
#include "util/typedefs.hpp"
|
||||||
|
|
||||||
namespace osrm
|
namespace osrm
|
||||||
@ -14,8 +14,7 @@ namespace engine
|
|||||||
|
|
||||||
// Algorithm-dependent heaps
|
// Algorithm-dependent heaps
|
||||||
// - CH algorithms use CH heaps
|
// - CH algorithms use CH heaps
|
||||||
// - CoreCH algorithms use CoreCH heaps that can be upcasted to CH heaps when CH algorithms reused
|
// - CoreCH algorithms use CH
|
||||||
// by CoreCH at calling ch::routingStep, ch::retrievePackedPathFromSingleHeap and ch::unpackPath
|
|
||||||
// - MLD algorithms use MLD heaps
|
// - MLD algorithms use MLD heaps
|
||||||
|
|
||||||
template <typename Algorithm> struct SearchEngineData
|
template <typename Algorithm> struct SearchEngineData
|
||||||
@ -37,10 +36,10 @@ struct ManyToManyHeapData : HeapData
|
|||||||
template <> struct SearchEngineData<routing_algorithms::ch::Algorithm>
|
template <> struct SearchEngineData<routing_algorithms::ch::Algorithm>
|
||||||
{
|
{
|
||||||
using QueryHeap = util::
|
using QueryHeap = util::
|
||||||
BinaryHeap<NodeID, NodeID, EdgeWeight, HeapData, util::UnorderedMapStorage<NodeID, int>>;
|
QueryHeap<NodeID, NodeID, EdgeWeight, HeapData, util::UnorderedMapStorage<NodeID, int>>;
|
||||||
using SearchEngineHeapPtr = boost::thread_specific_ptr<QueryHeap>;
|
using SearchEngineHeapPtr = boost::thread_specific_ptr<QueryHeap>;
|
||||||
|
|
||||||
using ManyToManyQueryHeap = util::BinaryHeap<NodeID,
|
using ManyToManyQueryHeap = util::QueryHeap<NodeID,
|
||||||
NodeID,
|
NodeID,
|
||||||
EdgeWeight,
|
EdgeWeight,
|
||||||
ManyToManyHeapData,
|
ManyToManyHeapData,
|
||||||
@ -81,7 +80,7 @@ struct MultiLayerDijkstraHeapData
|
|||||||
|
|
||||||
template <> struct SearchEngineData<routing_algorithms::mld::Algorithm>
|
template <> struct SearchEngineData<routing_algorithms::mld::Algorithm>
|
||||||
{
|
{
|
||||||
using QueryHeap = util::BinaryHeap<NodeID,
|
using QueryHeap = util::QueryHeap<NodeID,
|
||||||
NodeID,
|
NodeID,
|
||||||
EdgeWeight,
|
EdgeWeight,
|
||||||
MultiLayerDijkstraHeapData,
|
MultiLayerDijkstraHeapData,
|
||||||
|
@ -1,14 +1,12 @@
|
|||||||
#ifndef BINARY_HEAP_H
|
#ifndef OSRM_UTIL_QUERY_HEAP_HPP
|
||||||
#define BINARY_HEAP_H
|
#define OSRM_UTIL_QUERY_HEAP_HPP
|
||||||
|
|
||||||
#include <boost/assert.hpp>
|
#include <boost/assert.hpp>
|
||||||
#include <boost/heap/d_ary_heap.hpp>
|
#include <boost/heap/d_ary_heap.hpp>
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <cstddef>
|
|
||||||
#include <limits>
|
#include <limits>
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <type_traits>
|
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
@ -133,13 +131,13 @@ template <typename NodeID,
|
|||||||
typename Weight,
|
typename Weight,
|
||||||
typename Data,
|
typename Data,
|
||||||
typename IndexStorage = ArrayStorage<NodeID, NodeID>>
|
typename IndexStorage = ArrayStorage<NodeID, NodeID>>
|
||||||
class BinaryHeap
|
class QueryHeap
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
using WeightType = Weight;
|
using WeightType = Weight;
|
||||||
using DataType = Data;
|
using DataType = Data;
|
||||||
|
|
||||||
explicit BinaryHeap(std::size_t maxID) : node_index(maxID) { Clear(); }
|
explicit QueryHeap(std::size_t maxID) : node_index(maxID) { Clear(); }
|
||||||
|
|
||||||
void Clear()
|
void Clear()
|
||||||
{
|
{
|
||||||
@ -256,4 +254,4 @@ class BinaryHeap
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // BINARY_HEAP_H
|
#endif // OSRM_UTIL_QUERY_HEAP_HPP
|
@ -1,7 +1,5 @@
|
|||||||
#include "engine/search_engine_data.hpp"
|
#include "engine/search_engine_data.hpp"
|
||||||
|
|
||||||
#include "util/binary_heap.hpp"
|
|
||||||
|
|
||||||
namespace osrm
|
namespace osrm
|
||||||
{
|
{
|
||||||
namespace engine
|
namespace engine
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#include "util/binary_heap.hpp"
|
#include "util/query_heap.hpp"
|
||||||
#include "util/typedefs.hpp"
|
#include "util/typedefs.hpp"
|
||||||
|
|
||||||
#include <boost/mpl/list.hpp>
|
#include <boost/mpl/list.hpp>
|
||||||
@ -56,7 +56,7 @@ constexpr unsigned NUM_NODES = 100;
|
|||||||
|
|
||||||
BOOST_FIXTURE_TEST_CASE_TEMPLATE(insert_test, T, storage_types, RandomDataFixture<NUM_NODES>)
|
BOOST_FIXTURE_TEST_CASE_TEMPLATE(insert_test, T, storage_types, RandomDataFixture<NUM_NODES>)
|
||||||
{
|
{
|
||||||
BinaryHeap<TestNodeID, TestKey, TestWeight, TestData, T> heap(NUM_NODES);
|
QueryHeap<TestNodeID, TestKey, TestWeight, TestData, T> heap(NUM_NODES);
|
||||||
|
|
||||||
TestWeight min_weight = std::numeric_limits<TestWeight>::max();
|
TestWeight min_weight = std::numeric_limits<TestWeight>::max();
|
||||||
TestNodeID min_id;
|
TestNodeID min_id;
|
||||||
@ -89,7 +89,7 @@ BOOST_FIXTURE_TEST_CASE_TEMPLATE(insert_test, T, storage_types, RandomDataFixtur
|
|||||||
|
|
||||||
BOOST_FIXTURE_TEST_CASE_TEMPLATE(delete_min_test, T, storage_types, RandomDataFixture<NUM_NODES>)
|
BOOST_FIXTURE_TEST_CASE_TEMPLATE(delete_min_test, T, storage_types, RandomDataFixture<NUM_NODES>)
|
||||||
{
|
{
|
||||||
BinaryHeap<TestNodeID, TestKey, TestWeight, TestData, T> heap(NUM_NODES);
|
QueryHeap<TestNodeID, TestKey, TestWeight, TestData, T> heap(NUM_NODES);
|
||||||
|
|
||||||
for (unsigned idx : order)
|
for (unsigned idx : order)
|
||||||
{
|
{
|
||||||
@ -111,7 +111,7 @@ BOOST_FIXTURE_TEST_CASE_TEMPLATE(delete_min_test, T, storage_types, RandomDataFi
|
|||||||
|
|
||||||
BOOST_FIXTURE_TEST_CASE_TEMPLATE(delete_all_test, T, storage_types, RandomDataFixture<NUM_NODES>)
|
BOOST_FIXTURE_TEST_CASE_TEMPLATE(delete_all_test, T, storage_types, RandomDataFixture<NUM_NODES>)
|
||||||
{
|
{
|
||||||
BinaryHeap<TestNodeID, TestKey, TestWeight, TestData, T> heap(NUM_NODES);
|
QueryHeap<TestNodeID, TestKey, TestWeight, TestData, T> heap(NUM_NODES);
|
||||||
|
|
||||||
for (unsigned idx : order)
|
for (unsigned idx : order)
|
||||||
{
|
{
|
||||||
@ -125,7 +125,7 @@ BOOST_FIXTURE_TEST_CASE_TEMPLATE(delete_all_test, T, storage_types, RandomDataFi
|
|||||||
|
|
||||||
BOOST_FIXTURE_TEST_CASE_TEMPLATE(decrease_key_test, T, storage_types, RandomDataFixture<10>)
|
BOOST_FIXTURE_TEST_CASE_TEMPLATE(decrease_key_test, T, storage_types, RandomDataFixture<10>)
|
||||||
{
|
{
|
||||||
BinaryHeap<TestNodeID, TestKey, TestWeight, TestData, T> heap(10);
|
QueryHeap<TestNodeID, TestKey, TestWeight, TestData, T> heap(10);
|
||||||
|
|
||||||
for (unsigned idx : order)
|
for (unsigned idx : order)
|
||||||
{
|
{
|
Loading…
Reference in New Issue
Block a user