#include <stdint.h>
Go to the source code of this file.
|
int | trsp_edge_wrapper (edge_t *edges, size_t edge_count, restrict_t *restricts, size_t restrict_count, int64_t start_edge, double start_pos, int64_t end_edge, double end_pos, bool directed, bool has_reverse_cost, path_element_tt **path, size_t *path_count, char **err_msg) |
|
◆ MAX_RULE_LENGTH
#define MAX_RULE_LENGTH 5 |
◆ edge_t
◆ path_element_tt
◆ restrict_t
◆ trsp_edge_wrapper()
int trsp_edge_wrapper |
( |
edge_t * |
edges, |
|
|
size_t |
edge_count, |
|
|
restrict_t * |
restricts, |
|
|
size_t |
restrict_count, |
|
|
int64_t |
start_edge, |
|
|
double |
start_pos, |
|
|
int64_t |
end_edge, |
|
|
double |
end_pos, |
|
|
bool |
directed, |
|
|
bool |
has_reverse_cost, |
|
|
path_element_tt ** |
path, |
|
|
size_t * |
path_count, |
|
|
char ** |
err_msg |
|
) |
| |
Definition at line 37 of file trsp_core.cpp.
53 std::vector<PDVI> ruleTable;
57 for (i = 0; i < restrict_count; i++) {
58 std::vector<int64> seq;
60 seq.push_back(restricts[i].target_id);
62 seq.push_back(restricts[i].via[j]);
64 ruleTable.push_back(make_pair(restricts[i].to_cost, seq));
68 auto res = gdef.
my_dijkstra1(edges, edge_count, start_edge, start_pos,
69 end_edge, end_pos, directed, has_reverse_cost, path, path_count,
78 catch(std::exception& e) {
79 *err_msg =
const_cast<char *
>(e.what());
83 *err_msg =
const_cast<char *
>(
"Caught unknown exception!");
References MAX_RULE_LENGTH, GraphDefinition::my_dijkstra1(), and restrict_struct::via.
Referenced by compute_trsp().