Modularized vehicle
[navit-package] / src / vehicle.h
1 #ifndef NAVIT_VEHICLE_H
2 #define NAVIT_VEHICLE_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 struct vehicle_priv;
8
9 struct vehicle_methods {
10         void (*destroy)(struct vehicle_priv *priv);
11         int (*position_attr_get)(struct vehicle_priv *priv, enum attr_type type, struct attr *attr);
12 };
13
14 /* prototypes */
15 enum attr_type;
16 struct attr;
17 struct vehicle;
18 struct vehicle *vehicle_new(struct attr **attrs);
19 int vehicle_position_attr_get(struct vehicle *this_, enum attr_type type, struct attr *attr);
20 int vehicle_set_attr(struct vehicle *this_, struct attr *attr, struct attr **attrs);
21 int vehicle_add_attr(struct vehicle *this_, struct attr *attr, struct attr **attrs);
22 int vehicle_remove_attr(struct vehicle *this_, struct attr *attr);
23 void vehicle_destroy(struct vehicle *this_);
24 /* end of prototypes */
25 #ifdef __cplusplus
26 }
27 #endif
28
29 #endif
30