Merge with modular_map
[navit-package] / src / route.h
1 struct route_crossing {
2         long segid;
3         int dir;
4 };
5
6 struct route_crossings {
7         int count;
8         struct route_crossing crossing[0];
9 };
10
11 /* prototypes */
12 struct coord;
13 struct displaylist;
14 struct item;
15 struct map_selection;
16 struct mapset;
17 struct route;
18 struct route_info;
19 struct route_info_handle;
20 struct route_path_handle;
21 struct route_path_segment;
22 struct street_data;
23 struct track;
24 struct transformation;
25 struct route *route_new(struct mapset *ms);
26 struct mapset *route_get_mapset(struct route *this);
27 struct route_info *route_get_pos(struct route *this);
28 struct route_info *route_get_dst(struct route *this);
29 int route_contains(struct route *this, struct item *item);
30 void route_set_position(struct route *this, struct coord *pos);
31 void route_set_position_from_track(struct route *this, struct track *track);
32 struct map_selection *route_rect(int order, struct coord *c1, struct coord *c2, int rel, int abs);
33 void route_set_destination(struct route *this, struct coord *dst);
34 struct route_path_handle *route_path_open(struct route *this);
35 struct route_path_segment *route_path_get_segment(struct route_path_handle *h);
36 struct coord *route_path_segment_get_start(struct route_path_segment *s);
37 struct coord *route_path_segment_get_end(struct route_path_segment *s);
38 struct item *route_path_segment_get_item(struct route_path_segment *s);
39 int route_path_segment_get_length(struct route_path_segment *s);
40 int route_path_segment_get_time(struct route_path_segment *s);
41 void route_path_close(struct route_path_handle *h);
42 int route_time(struct item *item, int len);
43 int route_info_length(struct route_info *pos, struct route_info *dst, int dir);
44 struct street_data *street_get_data(struct item *item);
45 struct street_data *street_data_dup(struct street_data *orig);
46 void street_data_free(struct street_data *sd);
47 void route_info_free(struct route_info *inf);
48 struct street_data *route_info_street(struct route_info *rinf);
49 struct coord *route_info_point(struct route_info *rinf, int point);
50 struct route_info_handle *route_info_open(struct route_info *start, struct route_info *end, int dir);
51 struct coord *route_info_get(struct route_info_handle *h);
52 void route_info_close(struct route_info_handle *h);
53 void route_draw(struct route *this, struct transformation *t, struct displaylist *dsp);