pgRouting  2.2
pgRouting extends the PostGIS / PostgreSQL geospatial database to provide geospatial routing functionality.
 All Classes Functions Variables Pages
k_targets_boost_wrapper.h
1 /*PGR-GNU*****************************************************************
2 
3  * Bi Directional Shortest path algorithm for PostgreSQL
4  *
5  * Copyright (c) 2005 Sylvain Pasche
6 Mail: project@pgrouting.org
7 
8 ------
9 
10 This program is free software; you can redistribute it and/or modify
11 it under the terms of the GNU General Public License as published by
12 the Free Software Foundation; either version 2 of the License, or
13 (at your option) any later version.
14 
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License for more details.
19 
20 You should have received a copy of the GNU General Public License
21 along with this program; if not, write to the Free Software
22 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
23 
24 ********************************************************************PGR-GNU*/
25 
26 #ifndef _TOMANYSP_H
27 #define _TOMANYSP_H
28 
29 //#include "MyWrapper.h"
30 
31 #include "postgres.h"
32 // #include "../../common/src/pgr_types.h"
33 
34 typedef struct {
35  int id;
36  int source;
37  int target;
38  double cost;
39  double reverse_cost;
40 } edge_t;
41 
42 
43 typedef struct
44 {
45  int seq;
46  int id1;
47  int id2;
48  float8 cost;
49 } pgr_cost_t;
50 
51 typedef struct
52 {
53  int seq;
54  int id1;
55  int id2;
56  int id3;
57  float8 cost;
58 } pgr_cost3_t;
59 
60 
61 typedef struct
62 {
63  int vertex_id_source;
64  int edge_id_source;
65  int vertex_id_target;
66  int edge_id_target;
67  float8 cost;
69 
70 
71 typedef struct
72 {
73  int vertex_id_source;
74  int edge_id_source;
75  int vertex_id_target;
76  int edge_id_target;
77  float8 cost;
78  char* the_way;
80 
81 #ifdef __cplusplus
82 extern "C" {
83 #endif
84 
85 
86  int onetomany_dijkstra_boostdist(
87  edge_t *edges, unsigned int count, int start_vertex,
88  int *end_vertices, int nb_targets,
89  bool directed, bool has_reverse_cost,
90  pgr_cost_t **dists,
91  char **err_msg );
92 
93 
94 #ifdef __cplusplus
95 }
96 #endif
97 
98 #endif // _TOMANYSP_H