38#define AF_ONEWAY (1<<0)
39#define AF_ONEWAYREV (1<<1)
40#define AF_NOPASS (AF_ONEWAY|AF_ONEWAYREV)
41#define AF_ONEWAYMASK (AF_ONEWAY|AF_ONEWAYREV)
42#define AF_SEGMENTED (1<<2)
43#define AF_ROUNDABOUT (1<<3)
44#define AF_ROUNDABOUT_VALID (1<<4)
45#define AF_ONEWAY_EXCEPTION (1<<5)
46#define AF_SPEED_LIMIT (1<<6)
47#define AF_RESERVED1 (1<<7)
48#define AF_SIZE_OR_WEIGHT_LIMIT (1<<8)
49#define AF_THROUGH_TRAFFIC_LIMIT (1<<9)
50#define AF_TOLL (1<<10)
51#define AF_SEASONAL (1<<11)
52#define AF_UNPAVED (1<<12)
53#define AF_FORD (1<<13)
54#define AF_UNDERGROUND (1<<14)
55#define AF_HIGH_OCCUPANCY_CAR_ONLY (1<<18)
56#define AF_DANGEROUS_GOODS (1<<19)
57#define AF_EMERGENCY_VEHICLES (1<<20)
58#define AF_TRANSPORT_TRUCK (1<<21)
59#define AF_DELIVERY_TRUCK (1<<22)
60#define AF_PUBLIC_BUS (1<<23)
61#define AF_TAXI (1<<24)
62#define AF_HIGH_OCCUPANCY_CAR (1<<25)
64#define AF_MOTORCYCLE (1<<27)
65#define AF_MOPED (1<<28)
66#define AF_HORSE (1<<29)
67#define AF_BIKE (1<<30)
68#define AF_PEDESTRIAN (1<<31)
70#define AF_PBH (AF_PEDESTRIAN|AF_BIKE|AF_HORSE)
71#define AF_MOTORIZED_FAST (AF_MOTORCYCLE|AF_CAR|AF_HIGH_OCCUPANCY_CAR|AF_TAXI|AF_PUBLIC_BUS|AF_DELIVERY_TRUCK|AF_TRANSPORT_TRUCK|AF_EMERGENCY_VEHICLES)
72#define AF_ALL (AF_PBH|AF_MOPED|AF_MOTORIZED_FAST)
73#define AF_DISTORTIONMASK (AF_ALL|AF_ONEWAYMASK)
76#define AF_DG_ANY (1<<0)
77#define AF_DG_WATER_HARMFUL (1<<1)
78#define AF_DG_EXPLOSIVE (1<<2)
79#define AF_DG_FLAMMABLE (1<<3)
88#define ATTR_REL_MINABS -0x40000000
90#define ATTR_REL_MAXABS 0x40000000
92#define ATTR_REL_MINREL -0x1FFFFFFF
94#define ATTR_REL_MAXREL 0x20000000
98#define ATTR_REL_RELSHIFT 0x60000000
117#define ATTR_IS_INT(x) ((x) >= attr_type_int_begin && (x) <= attr_type_int_end)
118#define ATTR_IS_DOUBLE(x) ((x) >= attr_type_double_begin && (x) <= attr_type_double_end)
119#define ATTR_IS_STRING(x) ((x) >= attr_type_string_begin && (x) <= attr_type_string_end)
120#define ATTR_IS_OBJECT(x) ((x) >= attr_type_object_begin && (x) <= attr_type_object_end)
121#define ATTR_IS_ITEM(x) ((x) >= attr_type_item_begin && (x) <= attr_type_item_end)
122#define ATTR_IS_COORD_GEO(x) ((x) >= attr_type_coord_geo_begin && (x) <= attr_type_coord_geo_end)
123#define ATTR_IS_NUMERIC(x) (ATTR_IS_INT(x) || ATTR_IS_DOUBLE(x))
124#define ATTR_IS_COLOR(x) ((x) >= attr_type_color_begin && (x) <= attr_type_color_end)
125#define ATTR_IS_PCOORD(x) ((x) >= attr_type_pcoord_begin && (x) <= attr_type_pcoord_end)
126#define ATTR_IS_COORD(x) ((x) >= attr_type_coord_begin && (x) <= attr_type_coord_end)
127#define ATTR_IS_GROUP(x) ((x) >= attr_type_group_begin && (x) <= attr_type_group_end)
129#define ATTR_INT(x,y) ((struct attr){attr_##x,{.num=y}})
130#define ATTR_OBJECT(x,y) ((struct attr){attr_##x,{.navit=y}})
227int attr_from_line(
const char *line,
const char *
name,
int *pos,
char *val_ret,
char *name_ret);
230int attr_rel2real(
int attrval,
int whole,
int treat_neg_as_rel);
struct attr * attr_dup(struct attr *attr)
Definition attr.c:872
void attr_data_set_le(struct attr *attr, void *data)
Definition attr.c:804
char * attr_to_text(struct attr *attr, struct map *map, int pretty)
Converts an attribute to a string that can be displayed.
Definition attr.c:490
int attr_types_contains(enum attr_type *types, enum attr_type type)
Checks if an enumeration of attribute types contains a specific attribute.
Definition attr.c:1020
int attr_rel2real(int attrval, int whole, int treat_neg_as_rel)
Derive absolute value from relative attribute, given value of the whole range.
Definition attr.c:1057
struct attr ** attr_generic_prepend_attr(struct attr **attrs, struct attr *attr)
Definition attr.c:659
attr_position_valid
Definition attr.h:101
@ attr_position_valid_extrapolated_spatial
Definition attr.h:109
@ attr_position_valid_extrapolated_time
Definition attr.h:106
@ attr_position_valid_static
Definition attr.h:103
@ attr_position_valid_valid
Definition attr.h:114
@ attr_position_valid_invalid
Definition attr.h:102
void attr_dup_content(struct attr *src, struct attr *dst)
Definition attr.c:846
struct attr ** attr_generic_remove_attr(struct attr **attrs, struct attr *attr)
Removes an attribute from an attribute list.
Definition attr.c:693
struct attr ** attr_generic_add_attr_list(struct attr **attrs, struct attr **add)
Definition attr.c:650
void attr_destroy_hash(void)
Definition attr.c:79
int attr_data_size(struct attr *attr)
Definition attr.c:747
int attr_types_contains_default(enum attr_type *types, enum attr_type type, int deflt)
Check if an enumeration of attribute types contains a specific attribute.
Definition attr.c:1041
struct attr * attr_search(struct attr **attrs, enum attr_type attr)
Searches for an attribute of a given type.
Definition attr.c:506
attr_format
Definition attr.h:33
@ attr_format_default
Definition attr.h:34
@ attr_format_with_units
Definition attr.h:35
char * attr_to_text_ext(struct attr *attr, char *sep, enum attr_format fmt, enum attr_format def_fmt, struct map *map)
Converts attribute data to human-readable text.
Definition attr.c:363
void attr_list_free(struct attr **attrs)
Frees a list of attributes.
Definition attr.c:887
struct attr ** attr_list_append(struct attr **attrs, struct attr *attr)
void * attr_data_get(struct attr *attr)
Definition attr.c:787
struct attr ** attr_generic_set_attr(struct attr **attrs, struct attr *attr)
Generic set function.
Definition attr.c:600
void attr_free(struct attr *attr)
Definition attr.c:837
void attr_free_g(struct attr *attr, void *unused)
Definition attr.c:842
struct attr ** attr_list_dup(struct attr **attrs)
Duplicates a list of attributes.
Definition attr.c:907
struct attr ** attr_generic_add_attr(struct attr **attrs, struct attr *attr)
Generic add function.
Definition attr.c:632
void attr_free_content(struct attr *attr)
Definition attr.c:832
struct attr * attr_new_from_text(const char *name, const char *value)
Creates an attribute from text information.
Definition attr.c:138
char * attr_to_name(enum attr_type attr)
Converts an attr_type to a string.
Definition attr.c:117
enum attr_type attr_type_begin(enum attr_type type)
Definition attr.c:717
void attr_data_set(struct attr *attr, void *data)
Definition attr.c:796
int attr_generic_get_attr(struct attr **attrs, struct attr **def_attrs, enum attr_type type, struct attr *attr, struct attr_iter *iter)
Generic get function.
Definition attr.c:560
void attr_create_hash(void)
Definition attr.c:71
int attr_from_line(const char *line, const char *name, int *pos, char *val_ret, char *name_ret)
Retrieves an attribute from a line in textfile format.
Definition attr.c:945
enum attr_type attr_from_name(const char *name)
Converts a string to an attr_type.
Definition attr.c:92
attr_type
Definition attr_type_def.h:11
static GValue value
Definition datawindow.c:42
char data
Definition garmin_img.c:2
char type[3]
Definition garmin_img.c:2
unsigned char types
Definition garmin_img.c:1
item_type
Definition item_type_def.h:8
projection
Definition projection.h:23
char name[0]
Definition street.c:3
struct config * config
Definition attr.h:183
enum item_type item_type
Definition attr.h:143
long long * num64
Definition attr.h:191
struct itemgra * itemgra
Definition attr.h:164
struct bookmarks * bookmarks
Definition attr.h:182
struct image * image
Definition attr.h:172
struct log * log
Definition attr.h:156
struct gui * gui
Definition attr.h:161
struct arrows * arrows
Definition attr.h:173
struct route * route
Definition attr.h:157
struct navit_object * navit_object
Definition attr.h:186
struct navigation * navigation
Definition attr.h:158
char * str
Definition attr.h:139
struct cursor * cursor
Definition attr.h:177
struct tracking * tracking
Definition attr.h:163
struct coord_geo * coord_geo
Definition attr.h:147
struct attr * attrs
Definition attr.h:192
struct plugin * plugin
Definition attr.h:165
struct spikes * spikes
Definition attr.h:174
struct navit * navit
Definition attr.h:148
struct color * color
Definition attr.h:146
struct vehicle * vehicle
Definition attr.h:151
struct element * element
Definition attr.h:175
struct poly_hole * poly_hole
Definition attr.h:193
enum projection projection
Definition attr.h:144
struct icon * icon
Definition attr.h:171
struct layout * layout
Definition attr.h:152
double * numd
Definition attr.h:145
struct transformation * transformation
Definition attr.h:179
struct traffic * traffic
Definition attr.h:187
struct pcoord * pcoord
Definition attr.h:160
struct plugins * plugins
Definition attr.h:166
struct coord * coord
Definition attr.h:159
struct speech * speech
Definition attr.h:176
struct graphics * graphics
Definition attr.h:162
void * data
Definition attr.h:140
int * dash
Definition attr.h:188
enum item_type * item_types
Definition attr.h:189
struct polyline * polyline
Definition attr.h:168
struct callback_list * callback_list
Definition attr.h:150
struct vehicleprofile * vehicleprofile
Definition attr.h:180
struct text * text
Definition attr.h:170
struct circle * circle
Definition attr.h:169
struct callback * callback
Definition attr.h:149
struct mapset * mapset
Definition attr.h:155
struct map * map
Definition attr.h:154
struct osd * osd
Definition attr.h:184
enum attr_type type
Definition attr.h:137
struct layer * layer
Definition attr.h:153
struct displaylist * displaylist
Definition attr.h:178
struct item * item
Definition attr.h:142
enum attr_type * attr_types
Definition attr.h:190
long num
Definition attr.h:141
struct roadprofile * roadprofile
Definition attr.h:181
struct polygon * polygon
Definition attr.h:167
Definition bookmarks.c:53
Definition graphics.c:1783
A WGS84 coordinate.
Definition coord.h:97
Definition graphics.c:123
graphics object A graphics object serves as the target for drawing operations. It encapsulates variou...
Definition graphics.c:78
Represents an object on a map.
Definition item.h:124
Definition navigation.c:161
Definition xmlconfig.h:125
short min
Definition attr.h:133
short max
Definition attr.h:133
Definition roadprofile.h:24
A complete route.
Definition route.c:202
A traffic plugin instance.
Definition traffic.c:116
Definition vehicleprofile.h:33