Patrick Niklaus
9f9fde1f2b
Fix missing include in BinaryHeap
2014-07-22 17:17:56 +02:00
Dennis Luxen
2255ab0a37
remove unneede include
2014-07-18 11:38:05 +02:00
Dennis Luxen
a6ab042078
use parallel sorting for DeallocatingVector
2014-07-18 11:37:07 +02:00
Dennis Luxen
480f70c049
fix down-sizing in resize operation
2014-07-18 11:20:27 +02:00
Dennis Luxen
0592897859
rework assignment/copy operator, add operator[] to DeallocatingVector RA-iterator
2014-07-18 10:59:46 +02:00
Dennis Luxen
d5a9f8e177
refactor DeallocatingVector, apply boost::iterator_facade
2014-07-17 18:26:14 +02:00
Dennis Luxen
5840829cdc
refactor DeallocatingVector, apply boost::iterator_facade
2014-07-17 18:25:23 +02:00
Dennis Luxen
0c529361a3
add member variable/functions to store information if uturns are allowed
2014-07-16 12:47:10 +02:00
Dennis Luxen
7110acc94f
add initialization to QueryEdge::EdgeData
2014-07-16 09:44:09 +02:00
Dennis Luxen
695a2a2b6e
use correctly sized 64bit integer and avoid unintended (implicit up/down casts)
2014-07-15 15:25:44 +02:00
Dennis Luxen
0ee77a37d1
make DynamicGraph::InputEdge c'tor variadic, forward args to EdgeData type
2014-07-15 11:50:08 +02:00
Dennis Luxen
05241544c5
make DeallocatingVector::emplace_back variadic and forward Args to contained element
2014-07-15 11:47:58 +02:00
Dennis Luxen
495c872489
add c'tors to QueryEdge and its EdgeData
2014-07-15 11:46:26 +02:00
Dennis Luxen
8c09edfdbd
add minor reformatting
2014-07-15 11:42:27 +02:00
Dennis Luxen
67722cf788
make c'tor of DynamicGraph::InputEdge variadic to be more flexible against changing EdgeData types
2014-07-14 17:35:26 +02:00
Dennis Luxen
4622aebabb
reorder members for potentially tighter alignment
2014-07-14 17:31:50 +02:00
Dennis Luxen
96f29c27cd
make c'tor of StaticGraph::InputEdge variadic to be more flexible against changing EdgeData types
2014-07-14 17:16:28 +02:00
Dennis Luxen
2b33fcd92d
add c'tor to InputEdge of StaticGraph
2014-07-14 14:49:53 +02:00
Dennis Luxen
bf228b4ae4
fix integer range to have correct end
2014-07-04 17:41:56 +02:00
Dennis Luxen
e17a2e79a0
use range based for w/ integer ranges where possible
2014-07-04 17:23:45 +02:00
Dennis Luxen
c3621edf9c
refactor DynamicGraph to use integer ranges where possible
2014-07-02 16:58:19 +02:00
Dennis Luxen
a64f2de9e1
add function to add a node into DynamicGraph
2014-07-02 15:27:09 +02:00
Dennis Luxen
1d1be10f16
add functions to load graph into simplified data structures
2014-07-02 14:36:20 +02:00
Dennis Luxen
7817384e3c
remove debug call
2014-06-30 11:53:36 +02:00
Dennis Luxen
5d3123b97f
reformat code using clang-format
2014-06-26 13:50:29 +02:00
dmbreaker
25080aaf1d
Non-explicit constructor and hash-functions.
2014-06-26 13:50:29 +02:00
dmbreaker
05ac4b5ab6
Fixes to fulfill remarks.
2014-06-26 13:50:29 +02:00
dmbreaker
07e13e2499
Replaced std::pair with classes.
...
Looks like fixed wrong restriction type in CheckForEmanatingIsOnlyTurn (now RestrictionTarget instead if RestrictionSource).
2014-06-26 13:50:29 +02:00
dmbreaker
2d9645b9b0
Added structures for RestrictionTarget and RestrictionSource.
2014-06-26 13:50:29 +02:00
Dennis Luxen
631567864b
Merge pull request #1098 from TheMarex/rangetable-covertity
...
Fix coverity warning in RangeTable
2014-06-26 12:15:35 +02:00
Dennis Luxen
63381ad221
fix compilation on GCC 4.8.2, type of priority_queue<> is not properly deduced
2014-06-24 18:31:34 +02:00
Dennis Luxen
de7c56c6bc
remove remaining NULL pointers by nullptrs
2014-06-24 16:50:00 +02:00
Dennis Luxen
0c59ecfa14
remove dead code, produce empty route when origin and destination are the same
2014-06-24 16:09:25 +02:00
Patrick Niklaus
f67241a3cb
Fix coverity warning in RangeTable
2014-06-24 13:26:27 +02:00
Dennis Luxen
b74a573ec5
add typedef for an array of phantom node vectors
2014-06-23 16:54:57 +02:00
Dennis Luxen
5faf88afdb
implement incremental NN query for R-tree
2014-06-23 16:54:31 +02:00
Dennis Luxen
1231847a3c
replace hashmap with a dummy vector based implementation as the number of tags per object is tiny
2014-06-23 13:22:14 +02:00
Dennis Luxen
b06a73e893
replace hashmap with a dummy vector based implementation as the number of tags per object is tiny
2014-06-23 13:21:56 +02:00
Dennis Luxen
9b4071006e
reformat to cut long line
2014-06-20 16:39:58 +02:00
Dennis Luxen
ea8319e2b9
add more asserts to test for data corruption during MBR merging in StaticRTree
2014-06-19 17:52:59 +02:00
Dennis Luxen
2fae253c62
use std::size_t consistently and avoid possible loss of data
2014-06-19 11:14:28 +02:00
Dennis Luxen
1980cc007f
cast parameters before c'ting Coordinate
2014-06-17 19:10:26 +02:00
Dennis Luxen
46d4670b74
cast float to unsigned in a proper way
2014-06-17 16:00:42 +02:00
Dennis Luxen
a58d8420a2
add some formatting whitespace
2014-06-17 15:48:47 +02:00
Dennis Luxen
86617eccb1
use explicit casts
2014-06-17 15:47:40 +02:00
Dennis Luxen
0fc8e04ab5
use proper data types to avoid uncessary casts
2014-06-17 15:30:28 +02:00
Dennis Luxen
ca6e25b11c
make many more conversions explicit
2014-06-17 13:18:55 +02:00
Dennis Luxen
b112becbba
use explicit casts to mitigate MSVC warnings
2014-06-17 12:15:40 +02:00
Patrick Niklaus
e29b7a6eae
Fix some minor style issues
2014-06-15 11:04:10 +02:00
Patrick Niklaus
aedcc2ff40
Add array inlcude
2014-06-12 22:01:23 +02:00
Patrick Niklaus
4c17aeb180
Removed SSE code in RangeTable to rely on compiler optimazation
2014-06-12 22:01:23 +02:00
Patrick Niklaus
ef60ae652c
Fix edge cases in RangeTable
2014-06-12 22:01:23 +02:00
Patrick Niklaus
50bf7694c2
Constify some parts of RangeTable
2014-06-12 22:01:22 +02:00
Patrick Niklaus
807f1d7c1c
Initial support for SharedDataFacade
...
SharedDataLayout was refactored to include canary values at the
boundaries of each memory block. This makes it easy to detect overruns
and block-size mismatches between osrm-datastore and the
SharedDataFacade.
2014-06-12 22:01:22 +02:00
Patrick Niklaus
7a7d0c09d9
Integrate RangeTable into server
2014-06-12 22:00:03 +02:00
Patrick Niklaus
f90ce77da4
Use differential encoding for name offsets
...
Each name is represented as an integer range in a vector of chars.
Instead of storing the absolute offset inside this array, we can store
only the offset to the previous entry (the string size). By doing this we reduce
the number of bytes need to store an offset from 4 to 1 bytes (if we
set a maximum string length of 255).
This is however slower, since the absolute offset must be computed on
each querry by summing up all previous lengths. To limit the
performance inpact we only do this for blocks of a certain size (16).
2014-06-12 22:00:03 +02:00
Dennis Luxen
44c6a64bf4
make c'tor of NodeInfo explicit
2014-06-11 18:26:34 +02:00
Dennis Luxen
ed01eeaeb3
reformat SharedMemoryFactory according to code guidelines
2014-06-11 15:22:51 +02:00
alex85k
3282d410c4
Add basic shared memory support for Windows OS
2014-06-11 18:15:17 +06:00
Dennis Luxen
8aee371d81
further include untangling, chops 5sec compile time
2014-06-11 12:25:57 +02:00
Dennis Luxen
621a5a86a0
fixes #1041 , some only_ turn restrictions are inverted under certain conditions
2014-06-10 17:26:05 +02:00
Dennis Luxen
28a53aa147
remove superflous include
2014-06-06 19:18:44 +02:00
Dennis Luxen
67bcb98a84
make some constants explicit floats to cut down on MSVC conversion warnings
2014-06-06 15:39:29 +02:00
Alexei Kasatkin
b6787b0014
safeguard: do not read/write 0 bytes (iostream)
2014-06-05 23:16:19 +06:00
alex85k
a03b698e5a
simplify static asserts
...
Simplify static asserts to make them compatible with older compilers and MSVC 2013
2014-06-05 22:55:22 +06:00
Dennis Luxen
964118d1d6
add more comments and rename a couple of badly named variables
2014-06-05 17:27:00 +02:00
Dennis Luxen
f68af08931
fix short variable names and long lines
2014-06-05 15:40:52 +02:00
Dennis Luxen
cdd5a41965
remove duplicate edges from NodeBasedGraph
2014-06-05 15:33:24 +02:00
Dennis Luxen
1163417722
Merge branch 'patch-timing' of https://github.com/alex85k/Project-OSRM into alex85k-patch-timing
...
Conflicts:
extractor.cpp
2014-06-05 11:22:26 +02:00
alex85k
75dabb75e2
Use TimingUtil.h for all time measurement,
...
and make TimingUtil.h Windows-compatible
2014-06-04 19:52:34 +06:00
alex85k
15adcd24be
Remove extra mutex unlocking in ConcurrentQueue.h
...
As discussed in https://github.com/DennisOSRM/Project-OSRM/pull/998 , unlocking the mutex is performed on destruction. Second unlocking gives an assertion (for debug version) for Windows and FreeBSD 10.
2014-06-04 18:01:48 +06:00
Dennis Luxen
6a29168c14
use EdgeWeight typedef where possible
2014-06-03 11:28:39 +02:00
Dennis Luxen
4bc8562cd0
further reduce lint
2014-06-02 18:18:03 +02:00
Dennis Luxen
21eb5b661d
add integer based approximation for perpendicular distance
2014-05-30 14:33:37 +02:00
Dennis Luxen
87fe073118
re-layout parameters
2014-05-30 13:30:54 +02:00
Dennis Luxen
507dadebf4
fix a couple of variable names
2014-05-30 10:15:35 +02:00
Dennis Luxen
7dac8c621c
fix a couple of OCLint warning, i.e. short variable names and useless parantheses
2014-05-30 10:01:55 +02:00
Dennis Luxen
c21b40bebc
further renaming of variable names, reduces legacy lint
2014-05-29 19:25:17 +02:00
Dennis Luxen
0766c3c62d
refactor member names in ImportEdge
2014-05-29 18:46:20 +02:00
Dennis Luxen
cc40eb709c
moved ImportNode/Edge into compile units
2014-05-29 18:31:20 +02:00
Dennis Luxen
3625308585
moved ImportNode/Edge into compile units
2014-05-29 18:31:02 +02:00
Dennis Luxen
df3a7676eb
streamline branch-and-bound query code in R-tree
2014-05-29 17:16:24 +02:00
Dennis Luxen
8f6077e973
add proper c'tor to PhantomNode
2014-05-29 17:15:41 +02:00
Dennis Luxen
a67de410bf
move TreeNode exploration into its own function, fix performance regression
2014-05-29 15:36:14 +02:00
Dennis Luxen
df978345d7
rename start->source
2014-05-28 18:20:47 +02:00
Dennis Luxen
facc07c60d
use correct edge weight type in PathData
2014-05-28 18:20:29 +02:00
Dennis Luxen
38ebdbb563
implements #949 , wrong duration on first segment
2014-05-27 16:54:10 +02:00
Dennis Luxen
0ab6220635
add some more constness
2014-05-26 18:35:37 +02:00
Dennis Luxen
c35211b2f6
add some const keywords where applicable
2014-05-26 17:37:44 +02:00
Dennis Luxen
d3906cffdc
add property to mark end of leg
2014-05-26 15:30:06 +02:00
Dennis Luxen
5db23f7e46
make short variable names more legible
2014-05-26 12:49:24 +02:00
Dennis Luxen
58b35f6e2d
make short variable names more legible
2014-05-26 12:41:25 +02:00
Dennis Luxen
b51ad16756
remove useless parantheses
2014-05-26 12:37:00 +02:00
Dennis Luxen
d240ae3b03
sort edges in StaticGraph in parallel
2014-05-23 14:32:40 +02:00
Dennis Luxen
5057ae920c
replace a couple of std::sort calls with tbb::parallel_sort
2014-05-22 19:07:29 +02:00
Dennis Luxen
6a03f13d55
fixes #1032 :
...
- remove left-overs from OpenMP
- replace omp_* calls with TBB equivalents
2014-05-22 18:39:11 +02:00
Dennis Luxen
885dbe1e65
Merge pull request #1028 from TheMarex/tbb-port
...
Port from OpenMP to TBB
2014-05-22 16:57:06 +02:00
Dennis Luxen
7d7cce5c72
add better and more precise comments to Restrictionmap
2014-05-22 14:53:53 +02:00
Dennis Luxen
0c66f84555
add static assertions to SearchEngine
2014-05-22 14:41:27 +02:00
Dennis Luxen
044e41c079
make temporary variables const
2014-05-22 14:41:02 +02:00
Dennis Luxen
d93b4feb99
add some static asserts to guard against memory usage regressions
2014-05-22 12:41:25 +02:00
Dennis Luxen
f52d637f58
do less work when compressing geometries
2014-05-22 11:41:32 +02:00
Patrick Niklaus
77641a9fce
Port StaticRTree to use TBB
2014-05-21 21:49:22 +02:00
Patrick Niklaus
56d93eb18b
Replace omp atomic with std variant
2014-05-21 21:49:22 +02:00
Dennis Luxen
35c9021bdf
reduce debug verbosity in RestrictionMap
2014-05-21 12:39:52 +02:00
Dennis Luxen
493b13364f
move geographical distance computation to floats
2014-05-21 12:33:54 +02:00
Dennis Luxen
9117b45899
move more distance calculations to float
2014-05-21 10:03:30 +02:00
Dennis Luxen
812cf36d52
use floats instead of doubles for distance computations
2014-05-20 19:29:09 +02:00
Dennis Luxen
1802839a22
add approximator for perpendicular distance
2014-05-20 16:23:47 +02:00
Dennis Luxen
9a2d701e2e
fix issue #1025 :
...
- add function to count directed outgoing edges
- generate correct instruction for staying on a roundabout
- move test from @bug namespace to the general one
2014-05-20 15:40:14 +02:00
Dennis Luxen
69ad3f3365
add curly braces to one line if
2014-05-20 15:37:18 +02:00
Dennis Luxen
0574a60bc2
replace boost::unordered_map, move hash function for pairs into its own header
2014-05-20 14:33:02 +02:00
Dennis Luxen
e490c4afed
use consistent typedef'ed types
2014-05-20 14:33:02 +02:00
Dennis Luxen
d028a30f87
fixes issue #1019 :
...
- fix ignored turn restriction on chains of degree-2 nodes
- add a cucumber test to test for potential regressions
2014-05-20 14:33:02 +02:00
Dennis Luxen
a122a1e8c7
remove comment
2014-05-20 14:33:02 +02:00
Dennis Luxen
8fe09c85b6
move atan2 lookup into trig header
2014-05-20 14:33:02 +02:00
Dennis Luxen
bc951de2a5
use trig functions from std namespace
2014-05-20 14:33:01 +02:00
Dennis Luxen
8983c0f927
move GetBearing(.) function into FixedPointCoordinate
2014-05-20 14:33:01 +02:00
Dennis Luxen
a47467f29b
store facade ptr in c'tor, save a param in sub-sequent function calls
2014-05-20 14:33:01 +02:00
Dennis Luxen
a80815d57a
implements output generation through a dedicated JSON container:
...
- JSON syntax is not scattered over several files, but one place
- Reduces code duplication
- breaking changes:
- new property in json(p) formatted response: "found_alternative": True/False
- returned filenames now response.js(on) or route.gpx
- /hello plugin returns JSON now
2014-05-20 14:33:00 +02:00
Dennis Luxen
acab77f4f8
add simple isValid() function to PhantomNodes
2014-05-20 14:33:00 +02:00
Dennis Luxen
e769821e0f
use range based for loops to traverse graphs
2014-05-13 16:56:30 +02:00
Dennis Luxen
35c5be6475
add missing includes <string> and <limits>
2014-05-10 14:54:46 +02:00
Dennis Luxen
985a8e9f97
removing boost cref and betting on move semantics
2014-05-09 19:10:11 +02:00
Dennis Luxen
5e26e4c22d
replacing all boost unordereds
2014-05-09 18:40:07 +02:00
Dennis Luxen
b3ec9c9323
reformat
2014-05-09 16:48:58 +02:00
Dennis Luxen
84ffedd95d
replace boost::shared_ptr
2014-05-09 16:47:42 +02:00
Dennis Luxen
694ce9d04f
add forgotten include
2014-05-09 15:12:42 +02:00
Dennis Luxen
aebe8572f9
reformat NodeBasedGraph
2014-05-09 14:21:52 +02:00
Patrick Niklaus
e00ef38305
Apply clang-format on BFSComponentExplorer and RestrictionMap
2014-05-09 00:37:05 +02:00
Patrick Niklaus
22d0861f6d
Move BFSComponentExplorer to Contractor/
2014-05-09 00:37:05 +02:00
Patrick Niklaus
5265f38c35
Switched to std::shared_ptr in Contractor/
2014-05-09 00:37:05 +02:00
Patrick Niklaus
5a13c6cc3f
Move BFSComponentExplorer to own header.
2014-05-09 00:05:27 +02:00
Patrick Niklaus
2c0fa2a9f6
Split RestrictionMap and NodeBasedGraph from EdgeBasedGraphFactory
...
First step in an effort to simplify EdgeBasedGraphFactory.
2014-05-09 00:05:27 +02:00
Dennis Luxen
f060dfda40
refactor list of const static int into scoped enum
2014-05-08 18:04:05 +02:00
Dennis Luxen
b0ead129ca
use proper types instead of implicit casts
2014-05-08 16:39:38 +02:00
Dennis Luxen
15a95ff425
remove superflous includes
2014-05-08 15:49:32 +02:00
Dennis Luxen
37b8f97d60
C++11 migration:
...
- use lambda functions instead of binding member functions
- replace boost::mutex by STLs <mutex>
- reformat according to new guidelines
2014-05-08 15:47:48 +02:00
Dennis Luxen
9587923e55
make variable names consistent, migrate Plugins
2014-05-08 11:15:19 +02:00
Dennis Luxen
bed5c8002f
pass parameter by ref instead of by val:
...
- fixes coverity issue 1212009 Big parameter passed by value
2014-05-08 08:48:55 +02:00
Dennis Luxen
e12ad48822
migrate DataStructures to C++11
2014-05-07 18:39:16 +02:00
Dennis Luxen
6abbb06ff6
replace UINT_MAX by numeric limits max()
2014-05-07 17:25:35 +02:00
Dennis Luxen
5d8b4cb261
use numeric limits instead of C-style UINT_MAX
2014-05-07 15:37:22 +02:00
Dennis Luxen
9ee615020f
break out RouteParameters into compile unit
2014-05-07 15:36:53 +02:00
Dennis Luxen
0ff7ac6aad
migrate HilbertValue class to C++11, use fwd decl, remove boost/integer
2014-05-07 14:47:23 +02:00
Dennis Luxen
859502c504
remove boost/integer include
2014-05-07 14:46:46 +02:00
Dennis Luxen
9c2926ef8a
remove boost/integer include
2014-05-07 14:44:18 +02:00
Dennis Luxen
8e89f80588
make space usage more tight in Coordinate->String conversion
2014-05-07 14:12:57 +02:00
Dennis Luxen
dd4461d473
remove broken assert
2014-05-07 10:39:34 +02:00
Dennis Luxen
2706a0bec1
revert:
...
- GCC <4.8 does not support thread_local keyword.
- sticking with boost::thread_specific_ptr<> for now
2014-05-07 10:39:34 +02:00