Eclipse SUMO - Simulation of Urban MObility
SUMOXMLDefinitions.cpp
Go to the documentation of this file.
1/****************************************************************************/
2// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3// Copyright (C) 2002-2022 German Aerospace Center (DLR) and others.
4// This program and the accompanying materials are made available under the
5// terms of the Eclipse Public License 2.0 which is available at
6// https://www.eclipse.org/legal/epl-2.0/
7// This Source Code may also be made available under the following Secondary
8// Licenses when the conditions for such availability set forth in the Eclipse
9// Public License 2.0 are satisfied: GNU General Public License, version 2
10// or later which is available at
11// https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13/****************************************************************************/
23// Definitions of elements and attributes known by SUMO
24/****************************************************************************/
25#include <config.h>
26
27#include <cassert>
31
32#include "SUMOXMLDefinitions.h"
33
34// ===========================================================================
35// definitions
36// ===========================================================================
37
39 // Simulation elements
40 { "net", SUMO_TAG_NET },
41 { "edge", SUMO_TAG_EDGE },
42 { "lane", SUMO_TAG_LANE },
43 { "neigh", SUMO_TAG_NEIGH },
44 { "poly", SUMO_TAG_POLY },
45 { "poi", SUMO_TAG_POI },
46 { "junction", SUMO_TAG_JUNCTION },
47 { "restriction", SUMO_TAG_RESTRICTION },
48 { "meso", SUMO_TAG_MESO },
49 { "busStop", SUMO_TAG_BUS_STOP },
50 { "trainStop", SUMO_TAG_TRAIN_STOP },
51 { "ptLine", SUMO_TAG_PT_LINE },
52 { "access", SUMO_TAG_ACCESS },
53 { "containerStop", SUMO_TAG_CONTAINER_STOP },
54 { "chargingStation", SUMO_TAG_CHARGING_STATION },
55 { "parkingArea", SUMO_TAG_PARKING_AREA },
56 { "space", SUMO_TAG_PARKING_SPACE },
57 { "e1Detector", SUMO_TAG_E1DETECTOR },
58 { "inductionLoop", SUMO_TAG_INDUCTION_LOOP },
59 { "e2Detector", SUMO_TAG_E2DETECTOR },
60 { "laneAreaDetector", SUMO_TAG_LANE_AREA_DETECTOR },
61 { "multiLaneAreaDetector", GNE_TAG_MULTI_LANE_AREA_DETECTOR },
62 { "e3Detector", SUMO_TAG_E3DETECTOR },
63 { "entryExitDetector", SUMO_TAG_ENTRY_EXIT_DETECTOR },
64 { "edgeData", SUMO_TAG_MEANDATA_EDGE },
65 { "laneData", SUMO_TAG_MEANDATA_LANE },
66 { "detEntry", SUMO_TAG_DET_ENTRY },
67 { "detExit", SUMO_TAG_DET_EXIT },
68 { "edgeFollowDetector", SUMO_TAG_EDGEFOLLOWDETECTOR },
69 { "instantInductionLoop", SUMO_TAG_INSTANT_INDUCTION_LOOP },
70 { "calibrator", SUMO_TAG_CALIBRATOR },
71 { "calibratorLane", GNE_TAG_CALIBRATOR_LANE },
72 { "calibratorFlow", GNE_TAG_CALIBRATOR_FLOW },
73 { "rerouter", SUMO_TAG_REROUTER },
74 { "interval", SUMO_TAG_INTERVAL },
75 { "destProbReroute", SUMO_TAG_DEST_PROB_REROUTE },
76 { "closingReroute", SUMO_TAG_CLOSING_REROUTE },
77 { "closingLaneReroute", SUMO_TAG_CLOSING_LANE_REROUTE },
78 { "routeProbReroute", SUMO_TAG_ROUTE_PROB_REROUTE },
79 { "parkingAreaReroute", SUMO_TAG_PARKING_AREA_REROUTE },
80 { "step", SUMO_TAG_STEP },
81 { "variableSpeedSign", SUMO_TAG_VSS },
82 { "routeProbe", SUMO_TAG_ROUTEPROBE },
83 { "vaporizer", SUMO_TAG_VAPORIZER },
84 { "tractionSubstation", SUMO_TAG_TRACTION_SUBSTATION },
85 { "overheadWireSegment", SUMO_TAG_OVERHEAD_WIRE_SEGMENT }, // <- Deprecate
86 { "overheadWire", SUMO_TAG_OVERHEAD_WIRE_SECTION },
87 { "overheadWireClamp", SUMO_TAG_OVERHEAD_WIRE_CLAMP },
88 { "vTypeProbe", SUMO_TAG_VTYPEPROBE },
89 { "routes", SUMO_TAG_ROUTES },
90 { "trip", SUMO_TAG_TRIP },
91 { "tripJunctions", GNE_TAG_TRIP_JUNCTIONS },
92 { "vehicle", SUMO_TAG_VEHICLE },
93 { "vehicleWithRoute", GNE_TAG_VEHICLE_WITHROUTE },
94 { "vType", SUMO_TAG_VTYPE },
95 { "route", SUMO_TAG_ROUTE },
96 { "routeEmbedded", GNE_TAG_ROUTE_EMBEDDED },
97 { "request", SUMO_TAG_REQUEST },
98 { "source", SUMO_TAG_SOURCE },
99 { "taz", SUMO_TAG_TAZ },
100 { "tazSource", SUMO_TAG_TAZSOURCE },
101 { "tazSink", SUMO_TAG_TAZSINK },
102 { "trafficLight", SUMO_TAG_TRAFFIC_LIGHT },
103 { "tlLogic", SUMO_TAG_TLLOGIC },
104 { "phase", SUMO_TAG_PHASE },
105 { "condition", SUMO_TAG_CONDITION },
106 { "assignment", SUMO_TAG_ASSIGNMENT },
107 { "function", SUMO_TAG_FUNCTION },
108 { "tripTAZ", SUMO_TAG_TRIP_TAZ },
109 { "flow", SUMO_TAG_FLOW },
110 { "flowJunctions", GNE_TAG_FLOW_JUNCTIONS },
111 { "flowState", SUMO_TAG_FLOWSTATE },
112 { "edgeControl", SUMO_TAG_EDGECONTROL },
113
114 { "edgeRelation", SUMO_TAG_EDGEREL },
115 { "tazRelation", SUMO_TAG_TAZREL },
116 { "timedEvent", SUMO_TAG_TIMEDEVENT },
117 { "fromEdge", SUMO_TAG_FROMEDGE },
118 { "toEdge", SUMO_TAG_TOEDGE },
119 { "sink", SUMO_TAG_SINK },
120 { "param", SUMO_TAG_PARAM },
121 { "WAUT", SUMO_TAG_WAUT },
122 { "wautSwitch", SUMO_TAG_WAUT_SWITCH },
123 { "wautJunction", SUMO_TAG_WAUT_JUNCTION },
124 { "segment", SUMO_TAG_SEGMENT },
125 { "delete", SUMO_TAG_DEL },
126 { "stop", SUMO_TAG_STOP },
127 { "stopBusStop", SUMO_TAG_STOP_BUSSTOP },
128 { "stopContainerStop", SUMO_TAG_STOP_CONTAINERSTOP },
129 { "stopChargingStation", SUMO_TAG_STOP_CHARGINGSTATION },
130 { "stopParkingArea", SUMO_TAG_STOP_PARKINGAREA },
131 { "stopLane", SUMO_TAG_STOP_LANE },
132 { "polygonType", SUMO_TAG_POLYTYPE },
133 { "connection", SUMO_TAG_CONNECTION },
134 { "prohibition", SUMO_TAG_PROHIBITION },
135 { "split", SUMO_TAG_SPLIT },
136 { "node", SUMO_TAG_NODE },
137 { "type", SUMO_TAG_TYPE },
138 { "laneType", SUMO_TAG_LANETYPE },
139 { "detectorDefinition", SUMO_TAG_DETECTOR_DEFINITION },
140 { "routeDistribution", SUMO_TAG_ROUTE_DISTRIBUTION },
141 { "vTypeDistribution", SUMO_TAG_VTYPE_DISTRIBUTION },
142 { "roundabout", SUMO_TAG_ROUNDABOUT },
143 { "join", SUMO_TAG_JOIN },
144 { "joinExclude", SUMO_TAG_JOINEXCLUDE },
145 { "crossing", SUMO_TAG_CROSSING },
146 { "walkingArea", SUMO_TAG_WALKINGAREA },
147 { "stopOffset", SUMO_TAG_STOPOFFSET },
148 { "railSignalConstraints", SUMO_TAG_RAILSIGNAL_CONSTRAINTS },
149 { "predecessor", SUMO_TAG_PREDECESSOR },
150 { "insertionPredecessor", SUMO_TAG_INSERTION_PREDECESSOR },
151 { "foeInsertion", SUMO_TAG_FOE_INSERTION },
152 { "insertionOrder", SUMO_TAG_INSERTION_ORDER },
153 { "bidiPredecessor", SUMO_TAG_BIDI_PREDECESSOR },
154 { "railSignalConstraintTracker", SUMO_TAG_RAILSIGNAL_CONSTRAINT_TRACKER },
155 { "link", SUMO_TAG_LINK },
156 { "approaching", SUMO_TAG_APPROACHING },
157 // OSM
158 { "way", SUMO_TAG_WAY },
159 { "nd", SUMO_TAG_ND },
160 { "tag", SUMO_TAG_TAG },
161 { "relation", SUMO_TAG_RELATION },
162 { "member", SUMO_TAG_MEMBER },
163 // View
164 { "viewsettings", SUMO_TAG_VIEWSETTINGS },
165 { "view3D", SUMO_TAG_VIEWSETTINGS_3D },
166 { "decal", SUMO_TAG_VIEWSETTINGS_DECAL },
167 { "light", SUMO_TAG_VIEWSETTINGS_LIGHT },
168 { "scheme", SUMO_TAG_VIEWSETTINGS_SCHEME },
169 { "opengl", SUMO_TAG_VIEWSETTINGS_OPENGL },
170 { "background", SUMO_TAG_VIEWSETTINGS_BACKGROUND },
171 { "edges", SUMO_TAG_VIEWSETTINGS_EDGES },
172 { "vehicles", SUMO_TAG_VIEWSETTINGS_VEHICLES },
173 { "persons", SUMO_TAG_VIEWSETTINGS_PERSONS },
174 { "containers", SUMO_TAG_VIEWSETTINGS_CONTAINERS },
175 { "junctions", SUMO_TAG_VIEWSETTINGS_JUNCTIONS },
176 { "additionals", SUMO_TAG_VIEWSETTINGS_ADDITIONALS },
177 { "pois", SUMO_TAG_VIEWSETTINGS_POIS },
178 { "polys", SUMO_TAG_VIEWSETTINGS_POLYS },
179 { "legend", SUMO_TAG_VIEWSETTINGS_LEGEND },
180 { "event", SUMO_TAG_VIEWSETTINGS_EVENT },
182 { "include", SUMO_TAG_INCLUDE },
183 { "delay", SUMO_TAG_DELAY },
184 { "viewport", SUMO_TAG_VIEWPORT },
185 { "snapshot", SUMO_TAG_SNAPSHOT },
186 { "breakpoint", SUMO_TAG_BREAKPOINT },
187 { "location", SUMO_TAG_LOCATION },
188 { "colorScheme", SUMO_TAG_COLORSCHEME },
189 { "scalingScheme", SUMO_TAG_SCALINGSCHEME },
190 { "entry", SUMO_TAG_ENTRY },
191 { "rngState", SUMO_TAG_RNGSTATE },
192 { "rngLane", SUMO_TAG_RNGLANE },
193 { "vehicleTransfer", SUMO_TAG_VEHICLETRANSFER },
194 { "device", SUMO_TAG_DEVICE },
195 // Cars
196 { "carFollowing-IDM", SUMO_TAG_CF_IDM },
197 { "carFollowing-IDMM", SUMO_TAG_CF_IDMM },
198 { "carFollowing-Krauss", SUMO_TAG_CF_KRAUSS },
199 { "carFollowing-KraussPS", SUMO_TAG_CF_KRAUSS_PLUS_SLOPE },
200 { "carFollowing-KraussOrig1", SUMO_TAG_CF_KRAUSS_ORIG1 },
201 { "carFollowing-KraussX", SUMO_TAG_CF_KRAUSSX },
202 { "carFollowing-EIDM", SUMO_TAG_CF_EIDM },
203 { "carFollowing-SmartSK", SUMO_TAG_CF_SMART_SK },
204 { "carFollowing-Daniel1", SUMO_TAG_CF_DANIEL1 },
205 { "carFollowing-PWagner2009", SUMO_TAG_CF_PWAGNER2009 },
206 { "carFollowing-BKerner", SUMO_TAG_CF_BKERNER },
207 { "carFollowing-Wiedemann", SUMO_TAG_CF_WIEDEMANN },
208 { "carFollowing-W99", SUMO_TAG_CF_W99 },
209 { "carFollowing-Rail", SUMO_TAG_CF_RAIL },
210 { "carFollowing-ACC", SUMO_TAG_CF_ACC },
211 { "carFollowing-CACC", SUMO_TAG_CF_CACC },
212 { "carFollowing-CC", SUMO_TAG_CF_CC },
213 // Person
214 { "person", SUMO_TAG_PERSON },
215 { "personTrip", SUMO_TAG_PERSONTRIP },
216 { "ride", SUMO_TAG_RIDE },
217 { "walk", SUMO_TAG_WALK },
218 { "personFlow", SUMO_TAG_PERSONFLOW },
219 // Data (Netedit)
220 { "dataSet", SUMO_TAG_DATASET },
221 { "dataInterval", SUMO_TAG_DATAINTERVAL },
222 // Transport
223 { "container", SUMO_TAG_CONTAINER },
224 { "transport", SUMO_TAG_TRANSPORT },
225 { "tranship", SUMO_TAG_TRANSHIP },
226 { "containerFlow", SUMO_TAG_CONTAINERFLOW },
227 //Trajectories
228 { "trajectories", SUMO_TAG_TRAJECTORIES },
229 { "timestep", SUMO_TAG_TIMESTEP },
230 { "timeSlice", SUMO_TAG_TIMESLICE },
231 { "actorConfig", SUMO_TAG_ACTORCONFIG },
232 { "motionState", SUMO_TAG_MOTIONSTATE },
233 { "odPair", SUMO_TAG_OD_PAIR },
234 { "transportables", SUMO_TAG_TRANSPORTABLES },
235 // ActivityGen statistics file
236 { "general", AGEN_TAG_GENERAL },
237 { "street", AGEN_TAG_STREET },
238 { "workHours", AGEN_TAG_WORKHOURS },
239 { "opening", AGEN_TAG_OPENING },
240 { "closing", AGEN_TAG_CLOSING },
241 { "schools", AGEN_TAG_SCHOOLS },
242 { "school", AGEN_TAG_SCHOOL },
243 { "busStation", AGEN_TAG_BUSSTATION },
244 { "busLine", AGEN_TAG_BUSLINE },
245 { "stations", AGEN_TAG_STATIONS },
246 { "revStations", AGEN_TAG_REV_STATIONS },
247 { "station", AGEN_TAG_STATION },
248 { "frequency", AGEN_TAG_FREQUENCY },
249 { "population", AGEN_TAG_POPULATION },
250 { "bracket", AGEN_TAG_BRACKET },
251 { "cityGates", AGEN_TAG_CITYGATES },
252 { "entrance", AGEN_TAG_ENTRANCE },
253 { "parameters", AGEN_TAG_PARAM },
254 // NETEDIT
255 { "internalLane", GNE_TAG_INTERNAL_LANE },
256 { "poiLane", GNE_TAG_POILANE },
257 { "poiGeo", GNE_TAG_POIGEO },
258 { "rerouterSymbol", GNE_TAG_REROUTER_SYMBOL },
259 { "variableSpeedSignSymbol", GNE_TAG_VSS_SYMBOL },
260 { "flowRoute", GNE_TAG_FLOW_ROUTE },
261 { "flowWithRoute", GNE_TAG_FLOW_WITHROUTE },
262 // GNE waypoints
263 { "waypoint", GNE_TAG_WAYPOINT },
264 { "waypointLane", GNE_TAG_WAYPOINT_LANE },
265 { "waypointBusStop", GNE_TAG_WAYPOINT_BUSSTOP },
266 { "waypointContainerStop", GNE_TAG_WAYPOINT_CONTAINERSTOP },
267 { "waypointChargingStation", GNE_TAG_WAYPOINT_CHARGINGSTATION },
268 { "waypointParkingArea", GNE_TAG_WAYPOINT_PARKINGAREA },
269 // GNE Person trips
270 { "personTrip: edge->edge", GNE_TAG_PERSONTRIP_EDGE },
271 { "personTrip: edge->busStop", GNE_TAG_PERSONTRIP_BUSSTOP },
272 { "personTrip: junctions", GNE_TAG_PERSONTRIP_JUNCTIONS },
273 // GNE Walks
274 { "walk: edge->edge", GNE_TAG_WALK_EDGE },
275 { "walk: edge->busStop", GNE_TAG_WALK_BUSSTOP },
276 { "walk: edges", GNE_TAG_WALK_EDGES },
277 { "walk: route", GNE_TAG_WALK_ROUTE },
278 { "walk: junctions", GNE_TAG_WALK_JUNCTIONS },
279 // GNE Rides
280 { "ride: edge->edge", GNE_TAG_RIDE_EDGE },
281 { "ride: edge->busStop", GNE_TAG_RIDE_BUSSTOP },
282 // GNE Person Stops
283 { "stopPerson: busStop", GNE_TAG_STOPPERSON_BUSSTOP },
284 { "stopPerson: edge", GNE_TAG_STOPPERSON_EDGE },
285 // GNE Transports
286 { "transport: edge->edge", GNE_TAG_TRANSPORT_EDGE },
287 { "transport: edge->containerStop", GNE_TAG_TRANSPORT_CONTAINERSTOP },
288 // GNE Tranships
289 { "tranship: edge->edge", GNE_TAG_TRANSHIP_EDGE },
290 { "tranship: edge->containerStop", GNE_TAG_TRANSHIP_CONTAINERSTOP },
291 { "tranship: edges", GNE_TAG_TRANSHIP_EDGES },
292 // GNE Container Stops
293 { "stopContainer: containerStop", GNE_TAG_STOPCONTAINER_CONTAINERSTOP },
294 { "stopContainer: edge", GNE_TAG_STOPCONTAINER_EDGE },
295 // root file
296 { "rootFile", SUMO_TAG_ROOTFILE },
297 // SUMOConfig files
298 { "configuration", SUMO_TAG_CONFIGURATION },
299 { "net-file", SUMO_TAG_NETFILE },
300 { "additional-files", SUMO_TAG_ADDITIONALFILES },
301 { "route-files", SUMO_TAG_ROUTEFILES },
302 { "data-files", SUMO_TAG_DATAFILES },
303 // Last element
304 { "", SUMO_TAG_NOTHING } // -> must be the last one
305};
306
307
309 // meta value for attribute enum
310 { "default", SUMO_ATTR_DEFAULT },
311 // meandata
312 { "sampledSeconds", SUMO_ATTR_SAMPLEDSECONDS },
313 { "density", SUMO_ATTR_DENSITY },
314 { "laneDensity", SUMO_ATTR_LANEDENSITY },
315 { "occupancy", SUMO_ATTR_OCCUPANCY },
316 { "waitingTime", SUMO_ATTR_WAITINGTIME },
317 { "timeLoss", SUMO_ATTR_TIMELOSS },
318 { "speed", SUMO_ATTR_SPEED },
319 { "speedRelative", SUMO_ATTR_SPEEDREL },
320 { "departed", SUMO_ATTR_DEPARTED },
321 { "arrived", SUMO_ATTR_ARRIVED },
322 { "entered", SUMO_ATTR_ENTERED },
323 { "left", SUMO_ATTR_LEFT },
324 { "vaporized", SUMO_ATTR_VAPORIZED },
325 { "teleported", SUMO_ATTR_TELEPORTED },
326 { "traveltime", SUMO_ATTR_TRAVELTIME },
327 { "laneChangedFrom", SUMO_ATTR_LANECHANGEDFROM },
328 { "laneChangedTo", SUMO_ATTR_LANECHANGEDTO },
329 { "overlapTraveltime", SUMO_ATTR_OVERLAPTRAVELTIME },
330 { "CO_abs", SUMO_ATTR_CO_ABS },
331 { "CO2_abs", SUMO_ATTR_CO2_ABS },
332 { "HC_abs", SUMO_ATTR_HC_ABS },
333 { "PMx_abs", SUMO_ATTR_PMX_ABS },
334 { "NOx_abs", SUMO_ATTR_NOX_ABS },
335 { "fuel_abs", SUMO_ATTR_FUEL_ABS },
336 { "electricity_abs", SUMO_ATTR_ELECTRICITY_ABS },
337 { "CO_normed", SUMO_ATTR_CO_NORMED },
338 { "CO2_normed", SUMO_ATTR_CO2_NORMED },
339 { "HC_normed", SUMO_ATTR_HC_NORMED },
340 { "PMx_normed", SUMO_ATTR_PMX_NORMED },
341 { "NOx_normed", SUMO_ATTR_NOX_NORMED },
342 { "fuel_normed", SUMO_ATTR_FUEL_NORMED },
343 { "electricity_normed", SUMO_ATTR_ELECTRICITY_NORMED },
344 { "CO_perVeh", SUMO_ATTR_CO_PERVEH },
345 { "CO2_perVeh", SUMO_ATTR_CO2_PERVEH },
346 { "HC_perVeh", SUMO_ATTR_HC_PERVEH },
347 { "PMx_perVeh", SUMO_ATTR_PMX_PERVEH },
348 { "NOx_perVeh", SUMO_ATTR_NOX_PERVEH },
349 { "fuel_perVeh", SUMO_ATTR_FUEL_PERVEH },
350 { "electricity_perVeh", SUMO_ATTR_ELECTRICITY_PERVEH },
351 { "noise", SUMO_ATTR_NOISE },
352 { "amount", SUMO_ATTR_AMOUNT },
353 { "averageSpeed", SUMO_ATTR_AVERAGESPEED },
354 // FCD
355 { "x", SUMO_ATTR_X },
356 { "y", SUMO_ATTR_Y },
357 { "z", SUMO_ATTR_Z },
358 { "angle", SUMO_ATTR_ANGLE },
359 { "type", SUMO_ATTR_TYPE },
360 { "pos", SUMO_ATTR_POSITION },
361 { "edge", SUMO_ATTR_EDGE },
362 { "lane", SUMO_ATTR_LANE },
363 { "slope", SUMO_ATTR_SLOPE },
364 { "signals", SUMO_ATTR_SIGNALS },
365 { "acceleration", SUMO_ATTR_ACCELERATION },
366 { "accelerationLat", SUMO_ATTR_ACCELERATION_LAT },
367 { "distance", SUMO_ATTR_DISTANCE },
368 { "leaderID", SUMO_ATTR_LEADER_ID },
369 { "leaderSpeed", SUMO_ATTR_LEADER_SPEED },
370 { "leaderGap", SUMO_ATTR_LEADER_GAP },
371 { "vehicle", SUMO_ATTR_VEHICLE },
372 { "odometer", SUMO_ATTR_ODOMETER },
373 { "posLat", SUMO_ATTR_POSITION_LAT },
374
375 // Edge
376 { "id", SUMO_ATTR_ID },
377 { "refId", SUMO_ATTR_REFID },
378 { "name", SUMO_ATTR_NAME },
379 { "version", SUMO_ATTR_VERSION },
380 { "priority", SUMO_ATTR_PRIORITY },
381 { "numLanes", SUMO_ATTR_NUMLANES },
382 { "friction", SUMO_ATTR_FRICTION },
383 { "oneway", SUMO_ATTR_ONEWAY },
384 { "width", SUMO_ATTR_WIDTH },
385 { "widthResolution", SUMO_ATTR_WIDTHRESOLUTION },
386 { "maxWidth", SUMO_ATTR_MAXWIDTH },
387 { "minWidth", SUMO_ATTR_MINWIDTH },
388 { "sidewalkWidth", SUMO_ATTR_SIDEWALKWIDTH },
389 { "bikeLaneWidth", SUMO_ATTR_BIKELANEWIDTH },
390 { "remove", SUMO_ATTR_REMOVE },
391 { "length", SUMO_ATTR_LENGTH },
392 { "bidi", SUMO_ATTR_BIDI },
393 // Split
394 { "idBefore", SUMO_ATTR_ID_BEFORE },
395 { "idAfter", SUMO_ATTR_ID_AFTER },
396 // Positions
397 { "center", SUMO_ATTR_CENTER },
398 { "centerX", SUMO_ATTR_CENTER_X },
399 { "centerY", SUMO_ATTR_CENTER_Y },
400 { "centerZ", SUMO_ATTR_CENTER_Z },
401
402 { "key", SUMO_ATTR_KEY },
403 { "requestSize", SUMO_ATTR_REQUESTSIZE },
404 { "request", SUMO_ATTR_REQUEST },
405 { "response", SUMO_ATTR_RESPONSE },
406 { "programID", SUMO_ATTR_PROGRAMID },
407 { "phase", SUMO_ATTR_PHASE },
408 { "offset", SUMO_ATTR_OFFSET },
409 { "endOffset", SUMO_ATTR_ENDOFFSET },
410 { "incLanes", SUMO_ATTR_INCLANES },
411 { "intLanes", SUMO_ATTR_INTLANES },
412
413 { "weight", SUMO_ATTR_WEIGHT },
414 { "node", SUMO_ATTR_NODE },
415 { "edges", SUMO_ATTR_EDGES },
416 // Vehicle
417 { "depart", SUMO_ATTR_DEPART },
418 { "departLane", SUMO_ATTR_DEPARTLANE },
419 { "departPos", SUMO_ATTR_DEPARTPOS },
420 { "departPosLat", SUMO_ATTR_DEPARTPOS_LAT },
421 { "departSpeed", SUMO_ATTR_DEPARTSPEED },
422 { "departEdge", SUMO_ATTR_DEPARTEDGE },
423 { "arrivalLane", SUMO_ATTR_ARRIVALLANE },
424 { "arrivalPos", SUMO_ATTR_ARRIVALPOS },
425 { "arrivalPosLat", SUMO_ATTR_ARRIVALPOS_LAT },
426 { "arrivalSpeed", SUMO_ATTR_ARRIVALSPEED },
427 { "arrivalEdge", SUMO_ATTR_ARRIVALEDGE },
428 { "route", SUMO_ATTR_ROUTE },
429 { "maxSpeed", SUMO_ATTR_MAXSPEED },
430 { "desiredMaxSpeed", SUMO_ATTR_DESIRED_MAXSPEED },
431 { "maxSpeedLat", SUMO_ATTR_MAXSPEED_LAT },
432 { "latAlignment", SUMO_ATTR_LATALIGNMENT },
433 { "minGapLat", SUMO_ATTR_MINGAP_LAT },
434 { "accel", SUMO_ATTR_ACCEL },
435 { "decel", SUMO_ATTR_DECEL },
436 { "emergencyDecel", SUMO_ATTR_EMERGENCYDECEL },
437 { "apparentDecel", SUMO_ATTR_APPARENTDECEL },
438 { "actionStepLength", SUMO_ATTR_ACTIONSTEPLENGTH },
439 { "vClass", SUMO_ATTR_VCLASS },
440 { "vClasses", SUMO_ATTR_VCLASSES },
441 { "exceptions", SUMO_ATTR_EXCEPTIONS },
442 { "repno", SUMO_ATTR_REPNUMBER },
443 { "speedFactor", SUMO_ATTR_SPEEDFACTOR },
444 { "speedDev", SUMO_ATTR_SPEEDDEV },
445 { "laneChangeModel", SUMO_ATTR_LANE_CHANGE_MODEL },
446 { "carFollowModel", SUMO_ATTR_CAR_FOLLOW_MODEL },
447 { "minGap", SUMO_ATTR_MINGAP },
448 { "collisionMinGapFactor", SUMO_ATTR_COLLISION_MINGAP_FACTOR },
449 { "boardingDuration", SUMO_ATTR_BOARDING_DURATION },
450 { "loadingDuration", SUMO_ATTR_LOADING_DURATION },
451 { "scale", SUMO_ATTR_SCALE },
452 { "insertionChecks", SUMO_ATTR_INSERTIONCHECKS },
453 { "timeToTeleport", SUMO_ATTR_TIME_TO_TELEPORT },
454 { "timeToTeleportBidi", SUMO_ATTR_TIME_TO_TELEPORT_BIDI },
455 { "maneuverAngleTimes", SUMO_ATTR_MANEUVER_ANGLE_TIMES },
456 // MSDevice_ElecHybrid
457 { "overheadWireChargingPower", SUMO_ATTR_OVERHEADWIRECHARGINGPOWER },
458 // OverheadWire
459 { "overheadWireSegment", SUMO_ATTR_OVERHEAD_WIRE_SEGMENT },
460 { "segments", SUMO_ATTR_OVERHEAD_WIRE_SEGMENTS }, // <- deprecate
461 { "voltage", SUMO_ATTR_VOLTAGE },
462 { "voltageSource", SUMO_ATTR_VOLTAGESOURCE },
463 { "currentLimit", SUMO_ATTR_CURRENTLIMIT },
464 { "substationId", SUMO_ATTR_SUBSTATIONID },
465 { "wireResistivity", SUMO_ATTR_OVERHEAD_WIRE_RESISTIVITY },
466 { "forbiddenInnerLanes", SUMO_ATTR_OVERHEAD_WIRE_FORBIDDEN },
467 { "clamps", SUMO_ATTR_OVERHEAD_WIRE_CLAMPS }, // <- deprecate
468 { "idSegmentStartClamp", SUMO_ATTR_OVERHEAD_WIRE_CLAMP_START }, // <- deprecate
469 { "idSegmentEndClamp", SUMO_ATTR_OVERHEAD_WIRE_CLAMP_END }, // <- deprecate
470 { "wireClampStart", SUMO_ATTR_OVERHEAD_WIRECLAMP_START },
471 { "wireClampEnd", SUMO_ATTR_OVERHEAD_WIRECLAMP_END },
472 { "wireClampLaneStart", SUMO_ATTR_OVERHEAD_WIRECLAMP_LANESTART },
473 { "wireClampLaneEnd", SUMO_ATTR_OVERHEAD_WIRECLAMP_LANEEND },
474 // Charging Station
475 { "power", SUMO_ATTR_CHARGINGPOWER },
476 { "efficiency", SUMO_ATTR_EFFICIENCY },
477 { "chargeInTransit", SUMO_ATTR_CHARGEINTRANSIT },
478 { "chargeDelay", SUMO_ATTR_CHARGEDELAY},
479 // MSDevice_Battery
480 { "actualBatteryCapacity", SUMO_ATTR_ACTUALBATTERYCAPACITY },
481 { "maximumBatteryCapacity", SUMO_ATTR_MAXIMUMBATTERYCAPACITY },
482 { "maximumPower", SUMO_ATTR_MAXIMUMPOWER },
483 { "vehicleMass", SUMO_ATTR_VEHICLEMASS },
484 { "frontSurfaceArea", SUMO_ATTR_FRONTSURFACEAREA },
485 { "airDragCoefficient", SUMO_ATTR_AIRDRAGCOEFFICIENT },
486 { "internalMomentOfInertia", SUMO_ATTR_INTERNALMOMENTOFINERTIA },
487 { "radialDragCoefficient", SUMO_ATTR_RADIALDRAGCOEFFICIENT },
488 { "rollDragCoefficient", SUMO_ATTR_ROLLDRAGCOEFFICIENT },
489 { "constantPowerIntake", SUMO_ATTR_CONSTANTPOWERINTAKE },
490 { "propulsionEfficiency", SUMO_ATTR_PROPULSIONEFFICIENCY },
491 { "recuperationEfficiency", SUMO_ATTR_RECUPERATIONEFFICIENCY },
492 { "recuperationEfficiencyByDecel", SUMO_ATTR_RECUPERATIONEFFICIENCY_BY_DECELERATION },
493 { "stoppingTreshold", SUMO_ATTR_STOPPINGTRESHOLD },
494 // MSElecHybridExport
495 { "overheadWireId", SUMO_ATTR_OVERHEADWIREID },
496 { "tractionSubstationId", SUMO_ATTR_TRACTIONSUBSTATIONID },
498 { "circuitVoltage", SUMO_ATTR_VOLTAGEOFOVERHEADWIRE },
499 { "alphaCircuitSolver", SUMO_ATTR_ALPHACIRCUITSOLVER },
500 { "recuperationEnabled", SUMO_ATTR_RECUPERATIONENABLE },
501 // MSBatteryExport
502 { "energyConsumed", SUMO_ATTR_ENERGYCONSUMED },
503 { "totalEnergyConsumed", SUMO_ATTR_TOTALENERGYCONSUMED },
504 { "totalEnergyRegenerated", SUMO_ATTR_TOTALENERGYREGENERATED },
505 { "chargingStationId", SUMO_ATTR_CHARGINGSTATIONID },
506 { "energyCharged", SUMO_ATTR_ENERGYCHARGED },
507 { "energyChargedInTransit", SUMO_ATTR_ENERGYCHARGEDINTRANSIT },
508 { "energyChargedStopped", SUMO_ATTR_ENERGYCHARGEDSTOPPED },
509 { "posOnLane", SUMO_ATTR_POSONLANE },
510 { "timeStopped", SUMO_ATTR_TIMESTOPPED },
511 // MMPEVEM
512 { "wheelRadius", SUMO_ATTR_WHEELRADIUS },
513 { "maximumTorque", SUMO_ATTR_MAXIMUMTORQUE },
514 { "maximumSpeed", SUMO_ATTR_MAXIMUMSPEED },
515 { "gearEfficiency", SUMO_ATTR_GEAREFFICIENCY },
516 { "gearRatio", SUMO_ATTR_GEARRATIO },
517 { "maximumRecuperationTorque", SUMO_ATTR_MAXIMUMRECUPERATIONTORQUE },
518 { "maximumRecuperationPower", SUMO_ATTR_MAXIMUMRECUPERATIONPOWER },
519 { "internalBatteryResistance", SUMO_ATTR_INTERNALBATTERYRESISTANCE },
520 { "nominalBatteryVoltage", SUMO_ATTR_NOMINALBATTERYVOLTAGE },
521 { "powerLossMap", SUMO_ATTR_POWERLOSSMAP },
522 // ChargingStation output
523 { "chargingStatus", SUMO_ATTR_CHARGING_STATUS },
524 { "totalEnergyCharged", SUMO_ATTR_TOTALENERGYCHARGED },
525 { "chargingSteps", SUMO_ATTR_CHARGINGSTEPS },
526 { "totalEnergyChargedIntoVehicle", SUMO_ATTR_TOTALENERGYCHARGED_VEHICLE },
527 { "chargingBegin", SUMO_ATTR_CHARGINGBEGIN },
528 { "chargingEnd", SUMO_ATTR_CHARGINGEND },
529 { "partialCharge", SUMO_ATTR_PARTIALCHARGE },
530
531 // general emission / consumption
532 { "shutOffStopDuration", SUMO_ATTR_SHUT_OFF_STOP },
533 { "shutOffAutoDuration", SUMO_ATTR_SHUT_OFF_AUTO },
534
535 { "sigma", SUMO_ATTR_SIGMA },
536 { "sigmaStep", SUMO_ATTR_SIGMA_STEP },
537 { "startupDelay", SUMO_ATTR_STARTUP_DELAY },
538 { "tau", SUMO_ATTR_TAU },
539 { "tmp1", SUMO_ATTR_TMP1 },
540 { "tmp2", SUMO_ATTR_TMP2 },
541 { "tmp3", SUMO_ATTR_TMP3 },
542 { "tmp4", SUMO_ATTR_TMP4 },
543 { "tmp5", SUMO_ATTR_TMP5 },
544
545 { "vehdynamics", SUMO_ATTR_CF_EIDM_USEVEHDYNAMICS },
546 { "tpreview", SUMO_ATTR_CF_EIDM_T_LOOK_AHEAD },
548 { "treaction", SUMO_ATTR_CF_EIDM_T_REACTION },
549 { "tPersEstimate", SUMO_ATTR_CF_EIDM_T_PERSISTENCE_ESTIMATE },
550 { "ccoolness", SUMO_ATTR_CF_EIDM_C_COOLNESS },
551 { "sigmaleader", SUMO_ATTR_CF_EIDM_SIG_LEADER },
552 { "sigmagap", SUMO_ATTR_CF_EIDM_SIG_GAP },
553 { "sigmaerror", SUMO_ATTR_CF_EIDM_SIG_ERROR },
554 { "jerkmax", SUMO_ATTR_CF_EIDM_JERK_MAX },
555 { "epsilonacc", SUMO_ATTR_CF_EIDM_EPSILON_ACC },
556 { "taccmax", SUMO_ATTR_CF_EIDM_T_ACC_MAX },
557 { "Mflatness", SUMO_ATTR_CF_EIDM_M_FLATNESS },
558 { "Mbegin", SUMO_ATTR_CF_EIDM_M_BEGIN },
559 { "maxvehpreview", SUMO_ATTR_CF_EIDM_MAX_VEH_PREVIEW },
560
561 { "speedControlGain", SUMO_ATTR_SC_GAIN },
562 { "gapClosingControlGainSpeed", SUMO_ATTR_GCC_GAIN_SPEED },
563 { "gapClosingControlGainSpace", SUMO_ATTR_GCC_GAIN_SPACE },
564 { "gapControlGainSpeed", SUMO_ATTR_GC_GAIN_SPEED },
565 { "gapControlGainSpace", SUMO_ATTR_GC_GAIN_SPACE },
566 { "collisionAvoidanceGainSpeed", SUMO_ATTR_CA_GAIN_SPEED },
567 { "collisionAvoidanceGainSpace", SUMO_ATTR_CA_GAIN_SPACE },
568 { "collisionAvoidanceOverride", SUMO_ATTR_CA_OVERRIDE },
569
570 { "speedControlGainCACC", SUMO_ATTR_SC_GAIN_CACC },
571 { "gapClosingControlGainGap", SUMO_ATTR_GCC_GAIN_GAP_CACC },
572 { "gapClosingControlGainGapDot", SUMO_ATTR_GCC_GAIN_GAP_DOT_CACC },
573 { "gapControlGainGap", SUMO_ATTR_GC_GAIN_GAP_CACC },
574 { "gapControlGainGapDot", SUMO_ATTR_GC_GAIN_GAP_DOT_CACC },
575 { "collisionAvoidanceGainGap", SUMO_ATTR_CA_GAIN_GAP_CACC },
576 { "collisionAvoidanceGainGapDot", SUMO_ATTR_CA_GAIN_GAP_DOT_CACC },
577 { "tauCACCToACC", SUMO_ATTR_HEADWAY_TIME_CACC_TO_ACC },
578 { "speedControlMinGap", SUMO_ATTR_SC_MIN_GAP },
579 { "applyDriverState", SUMO_ATTR_APPLYDRIVERSTATE },
580
581 { "trainType", SUMO_ATTR_TRAIN_TYPE },
582
583 { "lcStrategic", SUMO_ATTR_LCA_STRATEGIC_PARAM },
584 { "lcCooperative", SUMO_ATTR_LCA_COOPERATIVE_PARAM },
585 { "lcSpeedGain", SUMO_ATTR_LCA_SPEEDGAIN_PARAM },
586 { "lcKeepRight", SUMO_ATTR_LCA_KEEPRIGHT_PARAM },
587 { "lcSublane", SUMO_ATTR_LCA_SUBLANE_PARAM },
588 { "lcOpposite", SUMO_ATTR_LCA_OPPOSITE_PARAM },
589 { "lcPushy", SUMO_ATTR_LCA_PUSHY },
590 { "lcPushyGap", SUMO_ATTR_LCA_PUSHYGAP },
591 { "lcAssertive", SUMO_ATTR_LCA_ASSERTIVE },
592 { "lcImpatience", SUMO_ATTR_LCA_IMPATIENCE },
593 { "lcTimeToImpatience", SUMO_ATTR_LCA_TIME_TO_IMPATIENCE },
594 { "lcAccelLat", SUMO_ATTR_LCA_ACCEL_LAT },
595 { "lcTurnAlignmentDistance", SUMO_ATTR_LCA_TURN_ALIGNMENT_DISTANCE },
596 { "lcOvertakeRight", SUMO_ATTR_LCA_OVERTAKE_RIGHT },
597 { "lcLookaheadLeft", SUMO_ATTR_LCA_LOOKAHEADLEFT },
598 { "lcSpeedGainRight", SUMO_ATTR_LCA_SPEEDGAINRIGHT },
599 { "lcSpeedGainLookahead", SUMO_ATTR_LCA_SPEEDGAIN_LOOKAHEAD },
600 { "lcCooperativeRoundabout", SUMO_ATTR_LCA_COOPERATIVE_ROUNDABOUT },
601 { "lcCooperativeSpeed", SUMO_ATTR_LCA_COOPERATIVE_SPEED },
602 { "lcMaxSpeedLatStanding", SUMO_ATTR_LCA_MAXSPEEDLATSTANDING },
603 { "lcMaxSpeedLatFactor", SUMO_ATTR_LCA_MAXSPEEDLATFACTOR },
604 { "lcMaxDistLatStanding", SUMO_ATTR_LCA_MAXDISTLATSTANDING },
605 { "lcLaneDiscipline", SUMO_ATTR_LCA_LANE_DISCIPLINE },
606 { "lcSigma", SUMO_ATTR_LCA_SIGMA },
607 { "lcKeepRightAcceptanceTime", SUMO_ATTR_LCA_KEEPRIGHT_ACCEPTANCE_TIME },
608 { "lcOvertakeDeltaSpeedFactor", SUMO_ATTR_LCA_OVERTAKE_DELTASPEED_FACTOR },
609 { "lcExperimental1", SUMO_ATTR_LCA_EXPERIMENTAL1 },
610
611 { "jmCrossingGap", SUMO_ATTR_JM_CROSSING_GAP },
612 { "jmDriveAfterYellowTime", SUMO_ATTR_JM_DRIVE_AFTER_YELLOW_TIME },
613 { "jmDriveAfterRedTime", SUMO_ATTR_JM_DRIVE_AFTER_RED_TIME },
614 { "jmDriveRedSpeed", SUMO_ATTR_JM_DRIVE_RED_SPEED },
615 { "jmIgnoreKeepClearTime", SUMO_ATTR_JM_IGNORE_KEEPCLEAR_TIME },
616 { "jmIgnoreFoeSpeed", SUMO_ATTR_JM_IGNORE_FOE_SPEED },
617 { "jmIgnoreFoeProb", SUMO_ATTR_JM_IGNORE_FOE_PROB },
618 { "jmIgnoreJunctionFoeProb", SUMO_ATTR_JM_IGNORE_JUNCTION_FOE_PROB },
619 { "jmSigmaMinor", SUMO_ATTR_JM_SIGMA_MINOR },
620 { "jmStoplineGap", SUMO_ATTR_JM_STOPLINE_GAP },
621 { "jmTimegapMinor", SUMO_ATTR_JM_TIMEGAP_MINOR },
622 { "junctionModel.ignoreIDs", SUMO_ATTR_JM_IGNORE_IDS },
623 { "junctionModel.ignoreTypes", SUMO_ATTR_JM_IGNORE_TYPES },
624
625 { "last", SUMO_ATTR_LAST },
626 { "cost", SUMO_ATTR_COST },
627 { "costs", SUMO_ATTR_COSTS },
628 { "savings", SUMO_ATTR_SAVINGS },
629 { "exitTimes", SUMO_ATTR_EXITTIMES },
630 { "probability", SUMO_ATTR_PROB },
631 { "replacedAtTime", SUMO_ATTR_REPLACED_AT_TIME },
632 { "replacedOnIndex", SUMO_ATTR_REPLACED_ON_INDEX },
633 { "count", SUMO_ATTR_COUNT },
634 { "probabilities", SUMO_ATTR_PROBS },
635 { "routes", SUMO_ATTR_ROUTES },
636 { "vTypes", SUMO_ATTR_VTYPES },
637 { "nextEdges", SUMO_ATTR_NEXT_EDGES },
638 { "deterministic", SUMO_ATTR_DETERMINISTIC },
639
640 { "lanes", SUMO_ATTR_LANES },
641 { "from", SUMO_ATTR_FROM },
642 { "to", SUMO_ATTR_TO },
643 { "fromLonLat", SUMO_ATTR_FROMLONLAT },
644 { "toLonLat", SUMO_ATTR_TOLONLAT },
645 { "fromXY", SUMO_ATTR_FROMXY },
646 { "toXY", SUMO_ATTR_TOXY },
647 { "fromJunction", SUMO_ATTR_FROMJUNCTION },
648 { "toJunction", SUMO_ATTR_TOJUNCTION },
649 { "period", SUMO_ATTR_PERIOD },
650 { "repeat", SUMO_ATTR_REPEAT },
651 { "cycleTime", SUMO_ATTR_CYCLETIME },
652 { "fromTaz", SUMO_ATTR_FROM_TAZ },
653 { "toTaz", SUMO_ATTR_TO_TAZ },
654 { "reroute", SUMO_ATTR_REROUTE },
655 { "personCapacity", SUMO_ATTR_PERSON_CAPACITY },
656 { "containerCapacity", SUMO_ATTR_CONTAINER_CAPACITY },
657 { "parkingLength", SUMO_ATTR_PARKING_LENGTH },
658 { "personNumber", SUMO_ATTR_PERSON_NUMBER },
659 { "containerNumber", SUMO_ATTR_CONTAINER_NUMBER },
660 { "modes", SUMO_ATTR_MODES },
661 { "walkFactor", SUMO_ATTR_WALKFACTOR },
662
663 { "function", SUMO_ATTR_FUNCTION },
664 { "freq", SUMO_ATTR_FREQUENCY },
665 { "style", SUMO_ATTR_STYLE },
666 { "file", SUMO_ATTR_FILE },
667 { "junction", SUMO_ATTR_JUNCTION },
668 { "number", SUMO_ATTR_NUMBER },
669 { "duration", SUMO_ATTR_DURATION },
670 { "until", SUMO_ATTR_UNTIL },
671 { "arrival", SUMO_ATTR_ARRIVAL },
672 { "extension", SUMO_ATTR_EXTENSION },
673 { "started", SUMO_ATTR_STARTED },
674 { "ended", SUMO_ATTR_ENDED },
675 { "routeProbe", SUMO_ATTR_ROUTEPROBE },
676 { "crossingEdges", SUMO_ATTR_CROSSING_EDGES },
677 // Traffic light & Nodes
678 { "time", SUMO_ATTR_TIME },
679 { "begin", SUMO_ATTR_BEGIN },
680 { "end", SUMO_ATTR_END },
681 { "tl", SUMO_ATTR_TLID },
682 { "tlType", SUMO_ATTR_TLTYPE },
683 { "tlLayout", SUMO_ATTR_TLLAYOUT },
684 { "linkIndex", SUMO_ATTR_TLLINKINDEX },
685 { "linkIndex2", SUMO_ATTR_TLLINKINDEX2 },
686 { "shape", SUMO_ATTR_SHAPE },
687 { "spreadType", SUMO_ATTR_SPREADTYPE },
688 { "radius", SUMO_ATTR_RADIUS },
689 { "customShape", SUMO_ATTR_CUSTOMSHAPE },
690 { "keepClear", SUMO_ATTR_KEEP_CLEAR },
691 { "indirect", SUMO_ATTR_INDIRECT },
692 { "rightOfWay", SUMO_ATTR_RIGHT_OF_WAY },
693 { "fringe", SUMO_ATTR_FRINGE },
694 { "color", SUMO_ATTR_COLOR },
695 { "dir", SUMO_ATTR_DIR },
696 { "state", SUMO_ATTR_STATE },
697 { "lcState", SUMO_ATTR_LCSTATE },
698 { "layer", SUMO_ATTR_LAYER },
699 { "fill", SUMO_ATTR_FILL },
700 { "lineWidth", SUMO_ATTR_LINEWIDTH },
701 { "prefix", SUMO_ATTR_PREFIX },
702 { "discard", SUMO_ATTR_DISCARD },
703
704 { "fromLane", SUMO_ATTR_FROM_LANE },
705 { "toLane", SUMO_ATTR_TO_LANE },
706 { "dest", SUMO_ATTR_DEST },
707 { "source", SUMO_ATTR_SOURCE },
708 { "via", SUMO_ATTR_VIA },
709 { "viaLonLat", SUMO_ATTR_VIALONLAT },
710 { "viaXY", SUMO_ATTR_VIAXY },
711 { "viaJunctions", SUMO_ATTR_VIAJUNCTIONS },
712 { "nodes", SUMO_ATTR_NODES },
713 { "visibility", SUMO_ATTR_VISIBILITY_DISTANCE },
714
715 { "minDur", SUMO_ATTR_MINDURATION },
716 { "maxDur", SUMO_ATTR_MAXDURATION },
717 { "earliestEnd", SUMO_ATTR_EARLIEST_END },
718 { "latestEnd", SUMO_ATTR_LATEST_END },
719 { "earlyTarget", SUMO_ATTR_EARLY_TARGET },
720 { "finalTarget", SUMO_ATTR_FINAL_TARGET },
721 { "check", SUMO_ATTR_CHECK },
722 { "nArgs", SUMO_ATTR_NARGS },
723 { "vehext", SUMO_ATTR_VEHICLEEXTENSION },
724 { "yellow", SUMO_ATTR_YELLOW },
725 { "red", SUMO_ATTR_RED },
726 { "next", SUMO_ATTR_NEXT },
727 { "foes", SUMO_ATTR_FOES },
728 { "constraints", SUMO_ATTR_CONSTRAINTS },
729 { "detectors", SUMO_ATTR_DETECTORS },
730 { "conditions", SUMO_ATTR_CONDITIONS },
731 { "saveDetectors", SUMO_ATTR_SAVE_DETECTORS },
732 { "saveConditions", SUMO_ATTR_SAVE_CONDITIONS },
733
734 // E2 detector
735 { "cont", SUMO_ATTR_CONT },
736 { "contPos", SUMO_ATTR_CONTPOS },
737 { "timeThreshold", SUMO_ATTR_HALTING_TIME_THRESHOLD },
738 { "speedThreshold", SUMO_ATTR_HALTING_SPEED_THRESHOLD },
739 { "jamThreshold", SUMO_ATTR_JAM_DIST_THRESHOLD },
740 { "show", SUMO_ATTR_SHOW_DETECTOR },
741 // E3 detector
742 { "openEntry", SUMO_ATTR_OPEN_ENTRY },
743
744 { "wautID", SUMO_ATTR_WAUT_ID },
745 { "junctionID", SUMO_ATTR_JUNCTION_ID },
746 { "procedure", SUMO_ATTR_PROCEDURE },
747 { "synchron", SUMO_ATTR_SYNCHRON },
748 { "refTime", SUMO_ATTR_REF_TIME },
749 { "startProg", SUMO_ATTR_START_PROG },
750 { "off", SUMO_ATTR_OFF },
751 { "friendlyPos", SUMO_ATTR_FRIENDLY_POS },
752 { "splitByType", SUMO_ATTR_SPLIT_VTYPE },
753 { "uncontrolled", SUMO_ATTR_UNCONTROLLED },
754 { "pass", SUMO_ATTR_PASS },
755 { "busStop", SUMO_ATTR_BUS_STOP },
756 { "trainStop", SUMO_ATTR_TRAIN_STOP },
757 { "containerStop", SUMO_ATTR_CONTAINER_STOP },
758 { "parkingArea", SUMO_ATTR_PARKING_AREA },
759 { "roadsideCapacity", SUMO_ATTR_ROADSIDE_CAPACITY },
760 { "onRoad", SUMO_ATTR_ONROAD },
761 { "chargingStation", SUMO_ATTR_CHARGING_STATION },
762 { "group", SUMO_ATTR_GROUP },
763 { "line", SUMO_ATTR_LINE },
764 { "lines", SUMO_ATTR_LINES },
765 { "tripId", SUMO_ATTR_TRIP_ID },
766 { "split", SUMO_ATTR_SPLIT },
767 { "join", SUMO_ATTR_JOIN },
768 { "intended", SUMO_ATTR_INTENDED },
769 { "onDemand", SUMO_ATTR_ONDEMAND },
770 { "collision", SUMO_ATTR_COLLISION },
771 { "value", SUMO_ATTR_VALUE },
772 { "prohibitor", SUMO_ATTR_PROHIBITOR },
773 { "prohibited", SUMO_ATTR_PROHIBITED },
774 { "allow", SUMO_ATTR_ALLOW },
775 { "disallow", SUMO_ATTR_DISALLOW },
776 { "prefer", SUMO_ATTR_PREFER },
777 { "changeLeft", SUMO_ATTR_CHANGE_LEFT },
778 { "changeRight", SUMO_ATTR_CHANGE_RIGHT },
779 { "controlledInner", SUMO_ATTR_CONTROLLED_INNER },
780 { "vehsPerHour", SUMO_ATTR_VEHSPERHOUR },
781 { "personsPerHour", SUMO_ATTR_PERSONSPERHOUR },
782 { "containersPerHour", SUMO_ATTR_CONTAINERSPERHOUR },
783 { "perHour", SUMO_ATTR_PERHOUR },
784 { "done", SUMO_ATTR_DONE },
785 { "output", SUMO_ATTR_OUTPUT },
786 { "height", SUMO_ATTR_HEIGHT },
787 { "guiShape", SUMO_ATTR_GUISHAPE },
788 { "osgFile", SUMO_ATTR_OSGFILE },
789 { "imgFile", SUMO_ATTR_IMGFILE },
790 { "relativePath", SUMO_ATTR_RELATIVEPATH },
791 { "emissionClass", SUMO_ATTR_EMISSIONCLASS },
792 { "mass", SUMO_ATTR_MASS },
793 { "impatience", SUMO_ATTR_IMPATIENCE },
794 { "startPos", SUMO_ATTR_STARTPOS },
795 { "endPos", SUMO_ATTR_ENDPOS },
796 { "triggered", SUMO_ATTR_TRIGGERED },
797 { "containerTriggered", SUMO_ATTR_CONTAINER_TRIGGERED },
798 { "parking", SUMO_ATTR_PARKING },
799 { "expected", SUMO_ATTR_EXPECTED },
800 { "permitted", SUMO_ATTR_PERMITTED },
801 { "expectedContainers", SUMO_ATTR_EXPECTED_CONTAINERS },
802 { "index", SUMO_ATTR_INDEX },
803
804 { "entering", SUMO_ATTR_ENTERING },
805 { "excludeEmpty", SUMO_ATTR_EXCLUDE_EMPTY },
806 { "withInternal", SUMO_ATTR_WITH_INTERNAL },
807 { "trackVehicles", SUMO_ATTR_TRACK_VEHICLES },
808 { "detectPersons", SUMO_ATTR_DETECT_PERSONS },
809 { "maxTraveltime", SUMO_ATTR_MAX_TRAVELTIME },
810 { "minSamples", SUMO_ATTR_MIN_SAMPLES },
811 { "writeAttributes", SUMO_ATTR_WRITE_ATTRIBUTES },
812 { "edgesFile", SUMO_ATTR_EDGESFILE },
813 { "aggregate", SUMO_ATTR_AGGREGATE },
814 { "numEdges", SUMO_ATTR_NUMEDGES },
815
816 { "lon", SUMO_ATTR_LON },
817 { "lat", SUMO_ATTR_LAT },
818 { "action", SUMO_ATTR_ACTION },
819 { "geo", SUMO_ATTR_GEO },
820 { "geoShape", SUMO_ATTR_GEOSHAPE },
821 { "k", SUMO_ATTR_K },
822 { "v", SUMO_ATTR_V },
823 { "ref", SUMO_ATTR_REF },
824 { "href", SUMO_ATTR_HREF },
825 { "zoom", SUMO_ATTR_ZOOM },
826 { "interpolated", SUMO_ATTR_INTERPOLATED },
827 { "threshold", SUMO_ATTR_THRESHOLD },
828
829 { "netOffset", SUMO_ATTR_NET_OFFSET },
830 { "convBoundary", SUMO_ATTR_CONV_BOUNDARY },
831 { "origBoundary", SUMO_ATTR_ORIG_BOUNDARY },
832 { "projParameter", SUMO_ATTR_ORIG_PROJ },
833
836 { "delta", SUMO_ATTR_CF_IDM_DELTA },
837 { "stepping", SUMO_ATTR_CF_IDM_STEPPING },
838 { "adaptFactor", SUMO_ATTR_CF_IDMM_ADAPT_FACTOR },
839 { "adaptTime", SUMO_ATTR_CF_IDMM_ADAPT_TIME },
840 { "phi", SUMO_ATTR_CF_KERNER_PHI },
841
842 { "security", SUMO_ATTR_CF_WIEDEMANN_SECURITY },
843 { "estimation", SUMO_ATTR_CF_WIEDEMANN_ESTIMATION },
844 { "cc1", SUMO_ATTR_CF_W99_CC1 },
845 { "cc2", SUMO_ATTR_CF_W99_CC2 },
846 { "cc3", SUMO_ATTR_CF_W99_CC3 },
847 { "cc4", SUMO_ATTR_CF_W99_CC4 },
848 { "cc5", SUMO_ATTR_CF_W99_CC5 },
849 { "cc6", SUMO_ATTR_CF_W99_CC6 },
850 { "cc7", SUMO_ATTR_CF_W99_CC7 },
851 { "cc8", SUMO_ATTR_CF_W99_CC8 },
852 { "cc9", SUMO_ATTR_CF_W99_CC9 },
853
854 { "ccDecel", SUMO_ATTR_CF_CC_CCDECEL },
855 { "constSpacing", SUMO_ATTR_CF_CC_CONSTSPACING },
856 { "kp", SUMO_ATTR_CF_CC_KP },
857 { "lambda", SUMO_ATTR_CF_CC_LAMBDA },
858 { "c1", SUMO_ATTR_CF_CC_C1 },
859 { "xi", SUMO_ATTR_CF_CC_XI },
860 { "omegaN", SUMO_ATTR_CF_CC_OMEGAN },
861 { "tauEngine", SUMO_ATTR_CF_CC_TAU },
862 { "lanesCount", SUMO_ATTR_CF_CC_LANES_COUNT },
863 { "ccAccel", SUMO_ATTR_CF_CC_CCACCEL },
864 { "ploegKp", SUMO_ATTR_CF_CC_PLOEG_KP },
865 { "ploegKd", SUMO_ATTR_CF_CC_PLOEG_KD },
866 { "ploegH", SUMO_ATTR_CF_CC_PLOEG_H },
867 { "flatbedKa", SUMO_ATTR_CF_CC_FLATBED_KA },
868 { "flatbedKv", SUMO_ATTR_CF_CC_FLATBED_KV },
869 { "flatbedKp", SUMO_ATTR_CF_CC_FLATBED_KP },
870 { "flatbedD", SUMO_ATTR_CF_CC_FLATBED_D },
871 { "flatbedH", SUMO_ATTR_CF_CC_FLATBED_H },
872
873 { "generateWalks", SUMO_ATTR_GENERATE_WALKS },
874 { "actType", SUMO_ATTR_ACTTYPE },
875 { "junctionCornerDetail", SUMO_ATTR_CORNERDETAIL },
876 { "junctionLinkDetail", SUMO_ATTR_LINKDETAIL },
877 { "rectangularLaneCut", SUMO_ATTR_RECTANGULAR_LANE_CUT },
878 { "walkingareas", SUMO_ATTR_WALKINGAREAS },
879 { "lefthand", SUMO_ATTR_LEFTHAND },
880 { "limitTurnSpeed", SUMO_ATTR_LIMIT_TURN_SPEED },
881 { "checkLaneFoesAll", SUMO_ATTR_CHECKLANEFOES_ALL },
882 { "checkLaneFoesRoundabout", SUMO_ATTR_CHECKLANEFOES_ROUNDABOUT },
883 { "tlsIgnoreInternalJunctionJam", SUMO_ATTR_TLS_IGNORE_INTERNAL_JUNCTION_JAM },
884 { "avoidOverlap", SUMO_ATTR_AVOID_OVERLAP },
885 { "junctionHigherSpeed", SUMO_ATTR_HIGHER_SPEED },
886 { "internalJunctionsVehicleWidth", SUMO_ATTR_INTERNAL_JUNCTIONS_VEHICLE_WIDTH },
887
888 { "actorConfig", SUMO_ATTR_ACTORCONFIG },
889 { "startTime", SUMO_ATTR_STARTTIME },
890 { "vehicleClass", SUMO_ATTR_VEHICLECLASS },
891 { "fuel", SUMO_ATTR_FUEL },
892 { "origin", SUMO_ATTR_ORIGIN },
893 { "destination", SUMO_ATTR_DESTINATION },
894 { "visible", SUMO_ATTR_VISIBLE },
895 { "limit", SUMO_ATTR_LIMIT },
896 { "active", SUMO_ATTR_ACTIVE },
897 { "arrivalTime", SUMO_ATTR_ARRIVALTIME },
898 { "arrivalTimeBraking", SUMO_ATTR_ARRIVALTIMEBRAKING },
899 { "arrivalSpeedBraking", SUMO_ATTR_ARRIVALSPEEDBRAKING },
900
901#ifndef WIN32
902 { "commandPosix", SUMO_ATTR_COMMAND },
903#else
904 { "commandWindows", SUMO_ATTR_COMMAND },
905#endif
906
907 // ActivityGen statistics file
908 { "inhabitants", AGEN_ATTR_INHABITANTS },
909 { "households", AGEN_ATTR_HOUSEHOLDS },
910 { "childrenAgeLimit", AGEN_ATTR_CHILDREN },
911 { "retirementAgeLimit", AGEN_ATTR_RETIREMENT },
912 { "carRate", AGEN_ATTR_CARS },
913 { "unemploymentRate", AGEN_ATTR_UNEMPLOYEMENT },
914 { "laborDemand", AGEN_ATTR_LABORDEMAND },
915 { "footDistanceLimit", AGEN_ATTR_MAX_FOOT_DIST },
916 { "incomingTraffic", AGEN_ATTR_IN_TRAFFIC },
917 { "incoming", AGEN_ATTR_INCOMING },
918 { "outgoingTraffic", AGEN_ATTR_OUT_TRAFFIC },
919 { "outgoing", AGEN_ATTR_OUTGOING },
920 { "population", AGEN_ATTR_POPULATION },
921 { "workPosition", AGEN_ATTR_OUT_WORKPOSITION },
922 { "hour", AGEN_ATTR_HOUR },
923 { "proportion", AGEN_ATTR_PROP },
924 { "capacity", AGEN_ATTR_CAPACITY },
925 { "opening", AGEN_ATTR_OPENING },
926 { "closing", AGEN_ATTR_CLOSING },
927 { "maxTripDuration", AGEN_ATTR_MAX_TRIP_DURATION },
928 { "rate", AGEN_ATTR_RATE },
929 { "beginAge", AGEN_ATTR_BEGINAGE },
930 { "endAge", AGEN_ATTR_ENDAGE },
931 { "peopleNbr", AGEN_ATTR_PEOPLENBR },
932 { "carPreference", AGEN_ATTR_CARPREF },
933 { "meanTimePerKmInCity", AGEN_ATTR_CITYSPEED },
934 { "freeTimeActivityRate", AGEN_ATTR_FREETIMERATE },
935 { "uniformRandomTraffic", AGEN_ATTR_UNI_RAND_TRAFFIC },
936 { "departureVariation", AGEN_ATTR_DEP_VARIATION },
937
938 // SUMOConfig files
939 { "config-file", SUMO_ATTR_CONFIGFILE },
940 { "net-file", SUMO_ATTR_NETFILE },
941 { "additional-files", SUMO_ATTR_ADDITIONALFILES },
942 { "route-files", SUMO_ATTR_ROUTEFILES },
943 { "data-files", SUMO_ATTR_DATAFILES },
944
945 // NETEDIT Attributes
946 { "selected", GNE_ATTR_SELECTED },
947 { "modificationStatusNotForPrinting", GNE_ATTR_MODIFICATION_STATUS },
948 { "shapeStart", GNE_ATTR_SHAPE_START },
949 { "shapeEnd", GNE_ATTR_SHAPE_END },
950 { "isBidi", GNE_ATTR_BIDIR },
951 { "closedShape", GNE_ATTR_CLOSE_SHAPE },
952 { "parentItem", GNE_ATTR_PARENT },
953 { "dataSet", GNE_ATTR_DATASET },
954 { "genericParameter", GNE_ATTR_PARAMETERS },
955 { "flowParameter", GNE_ATTR_FLOWPARAMETERS },
956 { "defaultVTypeModified", GNE_ATTR_DEFAULT_VTYPE_MODIFIED },
957 { "centerAfterCreation", GNE_ATTR_CENTER_AFTER_CREATION },
958 { "toBusStop", GNE_ATTR_TO_BUSSTOP },
959 { "toContainerStop", GNE_ATTR_TO_CONTAINERSTOP },
960 { "opposite", GNE_ATTR_OPPOSITE },
961 { "shiftLaneIndex", GNE_ATTR_SHIFTLANEINDEX },
962 { "stopOffset", GNE_ATTR_STOPOFFSET },
963 { "stopOException", GNE_ATTR_STOPOEXCEPTION },
964 { "VTypeDist.", GNE_ATTR_VTYPE_DISTRIBUTION },
965 { "poisson", GNE_ATTR_POISSON },
966 { "stopIndex", GNE_ATTR_STOPINDEX },
967
968 { "carriageLength", SUMO_ATTR_CARRIAGE_LENGTH },
969 { "locomotiveLength", SUMO_ATTR_LOCOMOTIVE_LENGTH },
970 { "carriageGap", SUMO_ATTR_CARRIAGE_GAP },
971
972 { "targetLanes", SUMO_ATTR_TARGETLANE },
973 { "crossing", SUMO_ATTR_CROSSING },
974
975 { "xmlns:xsi", SUMO_ATTR_XMLNS },
976 { "xsi:noNamespaceSchemaLocation", SUMO_ATTR_SCHEMA_LOCATION },
977
978 //@name RNG state saving attributes
979 // @{
980 { "routeHandler", SUMO_ATTR_RNG_ROUTEHANDLER },
981 { "insertionControl", SUMO_ATTR_RNG_INSERTIONCONTROL },
982 { "device", SUMO_ATTR_RNG_DEVICE },
983 { "device.btreceiver", SUMO_ATTR_RNG_DEVICE_BT },
984 { "device.toc", SUMO_ATTR_RNG_DEVICE_TOC },
985 { "driverState", SUMO_ATTR_RNG_DRIVERSTATE },
986 // @}
987
988 //@name meso edge type attributes
989 // @{
990 { "tauff", SUMO_ATTR_MESO_TAUFF },
991 { "taufj", SUMO_ATTR_MESO_TAUFJ },
992 { "taujf", SUMO_ATTR_MESO_TAUJF },
993 { "taujj", SUMO_ATTR_MESO_TAUJJ },
994 { "junctionControl", SUMO_ATTR_MESO_JUNCTION_CONTROL },
995 { "tlsPenalty", SUMO_ATTR_MESO_TLS_PENALTY },
996 { "tlsFlowPenalty", SUMO_ATTR_MESO_TLS_FLOW_PENALTY },
997 { "minorPenalty", SUMO_ATTR_MESO_MINOR_PENALTY },
998 { "overtaking", SUMO_ATTR_MESO_OVERTAKING },
999 // @}
1000
1001 // Other
1002 { "", SUMO_ATTR_NOTHING } //< must be the last one
1003};
1004
1005
1006const std::string SUMO_PARAM_ORIGID("origId");
1007
1008
1010 {"traffic_light", SumoXMLNodeType::TRAFFIC_LIGHT},
1011 {"traffic_light_unregulated", SumoXMLNodeType::TRAFFIC_LIGHT_NOJUNCTION},
1012 {"traffic_light_right_on_red", SumoXMLNodeType::TRAFFIC_LIGHT_RIGHT_ON_RED},
1013 {"rail_signal", SumoXMLNodeType::RAIL_SIGNAL},
1014 {"rail_crossing", SumoXMLNodeType::RAIL_CROSSING},
1015 {"priority", SumoXMLNodeType::PRIORITY},
1016 {"priority_stop", SumoXMLNodeType::PRIORITY_STOP},
1017 {"right_before_left", SumoXMLNodeType::RIGHT_BEFORE_LEFT},
1018 {"left_before_right", SumoXMLNodeType::LEFT_BEFORE_RIGHT},
1019 {"allway_stop", SumoXMLNodeType::ALLWAY_STOP},
1020 {"zipper", SumoXMLNodeType::ZIPPER},
1021 {"district", SumoXMLNodeType::DISTRICT},
1022 {"unregulated", SumoXMLNodeType::NOJUNCTION},
1023 {"internal", SumoXMLNodeType::INTERNAL},
1024 {"dead_end", SumoXMLNodeType::DEAD_END},
1026 {"unknown", SumoXMLNodeType::UNKNOWN} //< must be the last one
1027};
1028
1029
1031 {"unknown", SumoXMLEdgeFunc::UNKNOWN},
1032 {"normal", SumoXMLEdgeFunc::NORMAL},
1033 {"connector", SumoXMLEdgeFunc::CONNECTOR},
1034 {"crossing", SumoXMLEdgeFunc::CROSSING},
1035 {"walkingarea", SumoXMLEdgeFunc::WALKINGAREA},
1036 {"internal", SumoXMLEdgeFunc::INTERNAL} //< must be the last one
1037};
1038
1039
1041 {"right", LaneSpreadFunction::RIGHT }, // default: geometry is left edge border, lanes flare to the right
1042 {"roadCenter", LaneSpreadFunction::ROADCENTER }, // geometry is center of the bidirectional road
1043 {"center", LaneSpreadFunction::CENTER } // geometry is center of the edge (must be the last one)
1044};
1045
1047 {"0", ParkingType::ONROAD }, // default: park on the street
1048 {"1", ParkingType::OFFROAD }, // parking off the street
1049 {"opportunistic", ParkingType::OPPORTUNISTIC } // park of the street if there is an opportunity for it
1050};
1051
1053 {"edgePriority", RightOfWay::EDGEPRIORITY },
1054 {"default", RightOfWay::DEFAULT } // default (must be the last one)
1055};
1056
1058 {"outer", FringeType::OUTER },
1059 {"inner", FringeType::INNER },
1060 {"default", FringeType::DEFAULT } // default (must be the last one)
1061};
1062
1064 {"none", PersonMode::NONE},
1065 {"walkForward", PersonMode::WALK_FORWARD},
1066 {"walkBackward", PersonMode::WALK_BACKWARD},
1067 {"walk", PersonMode::WALK},
1068 {"bicycle", PersonMode::BICYCLE },
1069 {"car", PersonMode::CAR },
1070 {"taxi", PersonMode::TAXI },
1071 {"public", PersonMode::PUBLIC} // (must be the last one)
1072};
1073
1075 { "G", LINKSTATE_TL_GREEN_MAJOR },
1076 { "g", LINKSTATE_TL_GREEN_MINOR },
1077 { "r", LINKSTATE_TL_RED },
1078 { "u", LINKSTATE_TL_REDYELLOW },
1083 { "M", LINKSTATE_MAJOR },
1084 { "m", LINKSTATE_MINOR },
1085 { "=", LINKSTATE_EQUAL },
1086 { "s", LINKSTATE_STOP },
1087 { "w", LINKSTATE_ALLWAY_STOP },
1088 { "Z", LINKSTATE_ZIPPER },
1089 { "-", LINKSTATE_DEADEND } //< must be the last one
1090};
1091
1095 LINKSTATE_STOP, // used for SumoXMLNodeType::TRAFFIC_LIGHT_RIGHT_ON_RED
1102};
1103const std::string SUMOXMLDefinitions::ALLOWED_TLS_LINKSTATES(AllowedTLS_linkStatesInitializer, 9);
1104
1106 { "s", LinkDirection::STRAIGHT },
1107 { "t", LinkDirection::TURN },
1109 { "l", LinkDirection::LEFT },
1110 { "r", LinkDirection::RIGHT },
1111 { "L", LinkDirection::PARTLEFT },
1112 { "R", LinkDirection::PARTRIGHT },
1113 { "invalid", LinkDirection::NODIR } //< must be the last one
1114};
1115
1116
1118 { "static", TrafficLightType::STATIC },
1119 { "railSignal", TrafficLightType::RAIL_SIGNAL },
1120 { "railCrossing", TrafficLightType::RAIL_CROSSING },
1121 { "actuated", TrafficLightType::ACTUATED },
1122 { "NEMA", TrafficLightType::NEMA },
1123 { "delay_based", TrafficLightType::DELAYBASED },
1124 { "sotl_phase", TrafficLightType::SOTL_PHASE },
1125 { "sotl_platoon", TrafficLightType::SOTL_PLATOON },
1126 { "sotl_request", TrafficLightType::SOTL_REQUEST },
1127 { "sotl_wave", TrafficLightType::SOTL_WAVE },
1128 { "sotl_marching", TrafficLightType::SOTL_MARCHING },
1129 { "swarm", TrafficLightType::SWARM_BASED },
1130 { "deterministic", TrafficLightType::HILVL_DETERMINISTIC },
1131 { "off", TrafficLightType::OFF },
1132 { "<invalid>", TrafficLightType::INVALID } //< must be the last one
1133};
1134
1135
1137 { "opposites", TrafficLightLayout::OPPOSITES },
1138 { "incoming", TrafficLightLayout::INCOMING },
1139 { "alternateOneWay", TrafficLightLayout::ALTERNATE_ONEWAY },
1140 { "default", TrafficLightLayout::DEFAULT } //< must be the last one
1141};
1142
1144 { "none", InsertionCheck::NONE },
1145 { "collision", InsertionCheck::COLLISION },
1146 { "leaderGap", InsertionCheck::LEADER_GAP },
1147 { "followerGap", InsertionCheck::FOLLOWER_GAP },
1148 { "junction", InsertionCheck::JUNCTION },
1149 { "stop", InsertionCheck::STOP },
1150 { "arrivalSpeed", InsertionCheck::ARRIVAL_SPEED },
1151 { "oncomingTrain", InsertionCheck::ONCOMING_TRAIN },
1152 { "speedLimit", InsertionCheck::SPEED_LIMIT },
1153 { "pedestrian", InsertionCheck::PEDESTRIAN },
1154 { "bidi", InsertionCheck::BIDI },
1155 { "laneChange", InsertionCheck::LANECHANGE },
1156 { "all", InsertionCheck::ALL } //< must be the last one
1157};
1158
1160 { "DK2008", LaneChangeModel::DK2008 },
1161 { "LC2013", LaneChangeModel::LC2013 },
1162 { "SL2015", LaneChangeModel::SL2015 },
1163 { "default", LaneChangeModel::DEFAULT } //< must be the last one
1164};
1165
1167 { "IDM", SUMO_TAG_CF_IDM },
1168 { "IDMM", SUMO_TAG_CF_IDMM },
1169 { "Krauss", SUMO_TAG_CF_KRAUSS },
1170 { "KraussPS", SUMO_TAG_CF_KRAUSS_PLUS_SLOPE },
1171 { "KraussOrig1", SUMO_TAG_CF_KRAUSS_ORIG1 },
1172 { "KraussX", SUMO_TAG_CF_KRAUSSX }, // experimental extensions to the Krauss model
1173 { "EIDM", SUMO_TAG_CF_EIDM },
1174 { "SmartSK", SUMO_TAG_CF_SMART_SK },
1175 { "Daniel1", SUMO_TAG_CF_DANIEL1 },
1176 { "PWagner2009", SUMO_TAG_CF_PWAGNER2009 },
1177 { "BKerner", SUMO_TAG_CF_BKERNER },
1178 { "Rail", SUMO_TAG_CF_RAIL },
1179 { "CC", SUMO_TAG_CF_CC },
1180 { "ACC", SUMO_TAG_CF_ACC },
1181 { "CACC", SUMO_TAG_CF_CACC },
1182 { "W99", SUMO_TAG_CF_W99 },
1183 { "Wiedemann", SUMO_TAG_CF_WIEDEMANN } //< must be the last one
1184};
1185
1187 { "stay", LCA_STAY },
1188 { "left", LCA_LEFT },
1189 { "right", LCA_RIGHT },
1190 { "strategic", LCA_STRATEGIC },
1191 { "cooperative", LCA_COOPERATIVE },
1192 { "speedGain", LCA_SPEEDGAIN },
1193 { "keepRight", LCA_KEEPRIGHT },
1194 { "sublane", LCA_SUBLANE },
1195 { "traci", LCA_TRACI },
1196 { "urgent", LCA_URGENT },
1197 { "overlapping", LCA_OVERLAPPING },
1198 { "blocked", LCA_BLOCKED },
1199 { "amBL", LCA_AMBLOCKINGLEADER },
1200 { "amBF", LCA_AMBLOCKINGFOLLOWER },
1201 { "amBB", LCA_AMBACKBLOCKER },
1202 { "amBBS", LCA_AMBACKBLOCKER_STANDING },
1203 { "MR", LCA_MRIGHT },
1204 { "ML", LCA_MLEFT },
1205
1206 { "unknown", LCA_UNKNOWN } //< must be the last one
1207};
1208
1210 { "NGT400", TrainType::NGT400 },
1211 { "NGT400_16", TrainType::NGT400_16 },
1212 { "RB425", TrainType::RB425 },
1213 { "RB628", TrainType::RB628 },
1214 { "ICE1", TrainType::ICE1 },
1215 { "REDosto7", TrainType::REDOSTO7 },
1216 { "Freight", TrainType::FREIGHT },
1217 { "ICE3", TrainType::ICE3 }
1218};
1219
1220
1223
1226
1229
1232
1235
1238
1241
1244
1247
1250
1253
1256
1259
1262
1265
1268
1271
1274
1275
1276std::string
1278 assert(internalEdge[0] == ':');
1279 return internalEdge.substr(1, internalEdge.rfind('_') - 1);
1280}
1281
1282
1283std::string
1284SUMOXMLDefinitions::getEdgeIDFromLane(const std::string laneID) {
1285 return laneID.substr(0, laneID.rfind('_'));
1286}
1287
1288int
1289SUMOXMLDefinitions::getIndexFromLane(const std::string laneID) {
1290 return StringUtils::toInt(laneID.substr(laneID.rfind('_') + 1));
1291}
1292
1293
1294bool
1295SUMOXMLDefinitions::isValidNetID(const std::string& value) {
1296 return (value.size() > 0) && value.find_first_of(" \t\n\r|\\'\";,!<>&*?") == std::string::npos && value[0] != ':';
1297}
1298
1299
1300bool
1301SUMOXMLDefinitions::isValidVehicleID(const std::string& value) {
1302 return (value.size() > 0) && value.find_first_of(" \t\n\r|\\'\";,!<>&*?") == std::string::npos;
1303}
1304
1305
1306bool
1307SUMOXMLDefinitions::isValidTypeID(const std::string& value) {
1308 return (value.size() > 0) && value.find_first_of(" \t\n\r|\\'\";,<>&*?") == std::string::npos;
1309}
1310
1311bool
1313 return (value.size() > 0) && value.find_first_of(" \t\n\r|\\'\";,!<>&*?") == std::string::npos;
1314}
1315
1316bool
1317SUMOXMLDefinitions::isValidDetectorID(const std::string& value) {
1318 // special case: ' ' allowed
1319 return (value.size() > 0) && value.find_first_of("\t\n\r|\\'\";,!<>&*?") == std::string::npos;
1320}
1321
1322bool
1323SUMOXMLDefinitions::isValidAttribute(const std::string& value) {
1324 return value.find_first_of("\t\n\r&|\\'\"<>") == std::string::npos;
1325}
1326
1327
1328bool
1329SUMOXMLDefinitions::isValidFilename(const std::string& value) {
1330 return (value.find_first_of("\t\n\r@$%^&|{}*'\";<>") == std::string::npos);
1331}
1332
1333
1334bool
1336 const std::vector<std::string>& typeIDs = StringTokenizer(value).getVector();
1337 if (typeIDs.empty()) {
1338 return false;
1339 } else {
1340 // check that gives IDs are valid
1341 for (auto i : typeIDs) {
1343 return false;
1344 }
1345 }
1346 return true;
1347 }
1348}
1349
1350
1351bool
1353 return isValidListOfTypeID(StringTokenizer(value).getVector());
1354}
1355
1356
1357bool
1358SUMOXMLDefinitions::isValidListOfTypeID(const std::vector<std::string>& typeIDs) {
1359 if (typeIDs.empty()) {
1360 return false;
1361 } else {
1362 // check that gives IDs are valid
1363 for (const auto& typeID : typeIDs) {
1364 if (!SUMOXMLDefinitions::isValidTypeID(typeID)) {
1365 return false;
1366 }
1367 }
1368 return true;
1369 }
1370}
1371
1372
1373bool
1375 // Generic parameters keys cannot be empty
1376 if (value.empty()) {
1377 return false;
1378 } else {
1379 return isValidAttribute(value);
1380 }
1381}
1382
1383/****************************************************************************/
const std::string SUMO_PARAM_ORIGID("origId")
@ GNE_TAG_TRIP_JUNCTIONS
a trip between junctions (used in NETEDIT)
@ SUMO_TAG_TRACTION_SUBSTATION
A traction substation.
@ SUMO_TAG_PHASE
a single phase description
@ SUMO_TAG_INCLUDE
@ SUMO_TAG_RAILSIGNAL_CONSTRAINTS
Constraints on switching a rail signal.
@ SUMO_TAG_MEMBER
@ SUMO_TAG_BIDI_PREDECESSOR
Predecessor constraint for rail signal before bidirectional section.
@ SUMO_TAG_LINK
Link information for state-saving.
@ SUMO_TAG_INTERVAL
an aggreagated-output interval
@ SUMO_TAG_CLOSING_REROUTE
reroute of type closing
@ SUMO_TAG_TRANSPORTABLES
@ SUMO_TAG_TRIP_TAZ
a single trip definition that uses TAZs (used in NETEDIT)
@ SUMO_TAG_NET
root element of a network file
@ SUMO_TAG_STOP_CONTAINERSTOP
stop placed over a containerStop (used in netedit)
@ GNE_TAG_PERSONTRIP_JUNCTIONS
@ SUMO_TAG_APPROACHING
Link-approaching vehicle information for state-saving.
@ SUMO_TAG_REROUTER
A rerouter.
@ AGEN_TAG_CITYGATES
city entrances
@ SUMO_TAG_EDGEREL
a relation between two edges
@ GNE_TAG_WAYPOINT_PARKINGAREA
waypoint placed over a parking area (used in netedit)
@ AGEN_TAG_STATION
station for a certain vehicle
@ SUMO_TAG_ROUTES
root element of a route file
@ SUMO_TAG_INSERTION_PREDECESSOR
Predecessor constraint on insertion before rail signal.
@ SUMO_TAG_DATAINTERVAL
@ SUMO_TAG_STOPOFFSET
Information on vClass specific stop offsets at lane end.
@ GNE_TAG_MULTI_LANE_AREA_DETECTOR
an e2 detector over multiple lanes (placed here due create Additional Frame)
@ AGEN_TAG_STREET
streets object
@ SUMO_TAG_WAUT_JUNCTION
@ SUMO_TAG_REQUEST
description of a logic request within the junction
@ SUMO_TAG_WAUT_SWITCH
@ SUMO_TAG_ROUTEPROBE
a routeprobe detector
@ GNE_TAG_TRANSPORT_CONTAINERSTOP
@ SUMO_TAG_CF_KRAUSS
@ SUMO_TAG_CF_BKERNER
@ SUMO_TAG_JOINEXCLUDE
join exlude operation
@ SUMO_TAG_DEVICE
@ SUMO_TAG_CF_KRAUSSX
@ SUMO_TAG_TAZ
a traffic assignment zone
@ AGEN_TAG_BRACKET
alternative definition for Population
@ SUMO_TAG_TIMEDEVENT
The definition of a periodic event.
@ SUMO_TAG_CF_CACC
@ AGEN_TAG_FREQUENCY
frequency of a object
@ SUMO_TAG_E2DETECTOR
an e2 detector
@ SUMO_TAG_CHARGING_STATION
A Charging Station.
@ SUMO_TAG_VTYPE
description of a vehicle/person/container type
@ SUMO_TAG_ACCESS
An access point for a train stop.
@ SUMO_TAG_TIMESTEP
@ SUMO_TAG_WALK
@ GNE_TAG_PERSONTRIP_BUSSTOP
@ SUMO_TAG_NOTHING
invalid tag
@ SUMO_TAG_CF_CC
@ SUMO_TAG_VIEWSETTINGS_POIS
@ SUMO_TAG_CONDITION
a condition for phase switching
@ SUMO_TAG_TRANSHIP
@ GNE_TAG_WALK_EDGES
@ SUMO_TAG_PT_LINE
A pt line.
@ SUMO_TAG_CONTAINER_STOP
A container stop.
@ SUMO_TAG_CONTAINERFLOW
@ SUMO_TAG_PARKING_AREA_REROUTE
entry for an alternative parking zone
@ SUMO_TAG_ROOTFILE
root file
@ AGEN_TAG_SCHOOL
schools object
@ SUMO_TAG_RNGLANE
@ SUMO_TAG_COLORSCHEME
@ SUMO_TAG_STOP_CHARGINGSTATION
stop placed over a charging station (used in netedit)
@ SUMO_TAG_CF_KRAUSS_PLUS_SLOPE
@ SUMO_TAG_TAZSINK
a sink within a district (connection road)
@ SUMO_TAG_STOP_LANE
stop placed over a lane (used in netedit)
@ GNE_TAG_WAYPOINT_CONTAINERSTOP
waypoint placed over a containerStop (used in netedit)
@ SUMO_TAG_ADDITIONALFILES
additional files
@ GNE_TAG_STOPCONTAINER_EDGE
@ GNE_TAG_WAYPOINT_BUSSTOP
waypoint placed over a busStop (used in netedit)
@ SUMO_TAG_CF_IDM
@ SUMO_TAG_BUS_STOP
A bus stop.
@ SUMO_TAG_POI
begin/end of the description of a Point of interest
@ SUMO_TAG_EDGECONTROL
the internal state for edge control
@ SUMO_TAG_FLOWSTATE
a flow state definition (used when saving and loading simulatino state)
@ GNE_TAG_WAYPOINT_CHARGINGSTATION
waypoint placed over a charging station (used in netedit)
@ GNE_TAG_STOPPERSON_BUSSTOP
@ SUMO_TAG_MESO
edge-specific meso settings
@ GNE_TAG_INTERNAL_LANE
@ SUMO_TAG_CF_W99
@ SUMO_TAG_CF_RAIL
@ SUMO_TAG_STOP
stop for vehicles
@ SUMO_TAG_FUNCTION
a sequence of assignments evaluated in the context of passed arguments
@ SUMO_TAG_MEANDATA_LANE
a lane based mean data detector
@ SUMO_TAG_STEP
trigger: a step description
@ GNE_TAG_WAYPOINT
waypoint for vehicles (used in netedit)
@ SUMO_TAG_PROHIBITION
prohibition of circulation between two edges
@ AGEN_TAG_CLOSING
closing for workingHours object
@ SUMO_TAG_VIEWSETTINGS_3D
@ SUMO_TAG_VEHICLE
description of a vehicle
@ SUMO_TAG_LOCATION
@ SUMO_TAG_VIEWSETTINGS_BACKGROUND
@ AGEN_TAG_POPULATION
population and children accompaniment brackets
@ GNE_TAG_FLOW_ROUTE
a flow definition using a route instead of a from-to edges route (used in NETEDIT)
@ SUMO_TAG_ROUTE_DISTRIBUTION
distribution of a route
@ SUMO_TAG_VIEWSETTINGS_LEGEND
@ AGEN_TAG_REV_STATIONS
rev stations for certain vehicles
@ SUMO_TAG_CF_SMART_SK
@ SUMO_TAG_RESTRICTION
begin/end of the description of an edge restriction
@ SUMO_TAG_OVERHEAD_WIRE_CLAMP
An overhead wire clamp (connection of wires in opposite directions)
@ SUMO_TAG_RAILSIGNAL_CONSTRAINT_TRACKER
Saved state for constraint tracker.
@ SUMO_TAG_RNGSTATE
@ SUMO_TAG_CF_EIDM
@ SUMO_TAG_OD_PAIR
@ GNE_TAG_VSS_SYMBOL
VSS Symbol.
@ SUMO_TAG_ENTRY
@ SUMO_TAG_NETFILE
net file
@ AGEN_TAG_WORKHOURS
workingHours object
@ GNE_TAG_FLOW_JUNCTIONS
a flow between junctions (used in NETEDIT)
@ SUMO_TAG_CF_PWAGNER2009
@ SUMO_TAG_CF_KRAUSS_ORIG1
@ GNE_TAG_POIGEO
Point of interest over view with GEO attributes.
@ SUMO_TAG_VIEWSETTINGS_EVENT
@ SUMO_TAG_TOEDGE
Outgoing edge specification (jtrrouter)
@ GNE_TAG_TRANSHIP_EDGES
@ SUMO_TAG_LANETYPE
lane type
@ SUMO_TAG_CF_WIEDEMANN
@ GNE_TAG_STOPCONTAINER_CONTAINERSTOP
@ GNE_TAG_FLOW_WITHROUTE
description of a vehicle with an embedded route (used in NETEDIT)
@ SUMO_TAG_JOIN
Join operation.
@ SUMO_TAG_FLOW
a flow definitio nusing a from-to edges instead of a route (used by router)
@ SUMO_TAG_DELAY
@ SUMO_TAG_CONNECTION
connectio between two lanes
@ SUMO_TAG_PARKING_AREA
A parking area.
@ AGEN_TAG_SCHOOLS
school object
@ AGEN_TAG_STATIONS
stations for certain vehicles
@ SUMO_TAG_TRANSPORT
@ SUMO_TAG_ND
@ SUMO_TAG_ROUNDABOUT
roundabout defined in junction
@ AGEN_TAG_OPENING
opening for workingHours object
@ SUMO_TAG_WALKINGAREA
walking area for pedestrians
@ SUMO_TAG_CONFIGURATION
@ SUMO_TAG_ROUTE_PROB_REROUTE
probability of route of a reroute
@ GNE_TAG_CALIBRATOR_LANE
A calibrator placed over lane.
@ SUMO_TAG_DET_ENTRY
an e3 entry point
@ SUMO_TAG_VIEWSETTINGS_OPENGL
@ SUMO_TAG_TLLOGIC
a traffic light logic
@ SUMO_TAG_SCALINGSCHEME
@ SUMO_TAG_VIEWSETTINGS_ADDITIONALS
@ SUMO_TAG_PARKING_SPACE
A parking space for a single vehicle within a parking area.
@ SUMO_TAG_TRAJECTORIES
@ SUMO_TAG_FOE_INSERTION
Predecessor constraint on switching a rail signal.
@ SUMO_TAG_VIEWSETTINGS_EVENT_JAM_TIME
@ AGEN_TAG_GENERAL
ActivityGen Tags.
@ SUMO_TAG_CONTAINER
@ SUMO_TAG_JUNCTION
begin/end of the description of a junction
@ SUMO_TAG_MOTIONSTATE
@ SUMO_TAG_CROSSING
crossing between edges for pedestrians
@ SUMO_TAG_VIEWSETTINGS_PERSONS
@ GNE_TAG_WALK_BUSSTOP
@ SUMO_TAG_VIEWSETTINGS_JUNCTIONS
@ SUMO_TAG_WAY
@ SUMO_TAG_EDGEFOLLOWDETECTOR
An edge-following detector.
@ SUMO_TAG_VIEWSETTINGS_VEHICLES
@ SUMO_TAG_ROUTE
begin/end of the description of a route
@ SUMO_TAG_MEANDATA_EDGE
an edge based mean data detector
@ SUMO_TAG_POLY
begin/end of the description of a polygon
@ SUMO_TAG_RIDE
@ SUMO_TAG_FROMEDGE
Incoming edge specification (jtrrouter)
@ SUMO_TAG_OVERHEAD_WIRE_SECTION
An overhead wire section.
@ SUMO_TAG_SINK
Sink(s) specification.
@ SUMO_TAG_VTYPEPROBE
a vtypeprobe detector
@ SUMO_TAG_SNAPSHOT
@ SUMO_TAG_TRAIN_STOP
A train stop (alias for bus stop)
@ SUMO_TAG_SOURCE
a source
@ GNE_TAG_RIDE_EDGE
@ SUMO_TAG_VIEWSETTINGS_EDGES
@ SUMO_TAG_OVERHEAD_WIRE_SEGMENT
An overhead wire segment.
@ SUMO_TAG_STOP_BUSSTOP
stop placed over a busStop (used in netedit)
@ SUMO_TAG_VTYPE_DISTRIBUTION
distribution of a vehicle type
@ SUMO_TAG_NODE
alternative definition for junction
@ SUMO_TAG_LANE
begin/end of the description of a single lane
@ GNE_TAG_TRANSHIP_EDGE
@ SUMO_TAG_INSTANT_INDUCTION_LOOP
An instantenous induction loop.
@ GNE_TAG_WALK_JUNCTIONS
@ SUMO_TAG_BREAKPOINT
@ GNE_TAG_VEHICLE_WITHROUTE
description of a vehicle with an embedded route (used in NETEDIT)
@ GNE_TAG_CALIBRATOR_FLOW
a flow definition within in Calibrator
@ SUMO_TAG_DEST_PROB_REROUTE
probability of destiny of a reroute
@ GNE_TAG_POILANE
Point of interest over Lane.
@ SUMO_TAG_DATASET
@ SUMO_TAG_DATAFILES
data files
@ SUMO_TAG_VIEWSETTINGS_DECAL
@ SUMO_TAG_SEGMENT
segment of a lane
@ SUMO_TAG_PARAM
parameter associated to a certain key
@ SUMO_TAG_E1DETECTOR
an e1 detector
@ AGEN_TAG_ENTRANCE
alternative definition for city entrances
@ SUMO_TAG_INSERTION_ORDER
Predecessor constraint on insertion before rail signal.
@ GNE_TAG_WAYPOINT_LANE
waypoint placed over a lane (used in netedit)
@ SUMO_TAG_VIEWSETTINGS_SCHEME
@ SUMO_TAG_PERSON
@ SUMO_TAG_DET_EXIT
an e3 exit point
@ SUMO_TAG_PERSONTRIP
@ SUMO_TAG_TYPE
type (edge)
@ SUMO_TAG_POLYTYPE
type of polygon
@ SUMO_TAG_TIMESLICE
@ SUMO_TAG_VAPORIZER
vaporizer of vehicles
@ SUMO_TAG_LANE_AREA_DETECTOR
alternative tag for e2 detector
@ GNE_TAG_REROUTER_SYMBOL
Rerouter Symbol.
@ SUMO_TAG_STOP_PARKINGAREA
stop placed over a parking area (used in netedit)
@ SUMO_TAG_WAUT
@ SUMO_TAG_ACTORCONFIG
@ SUMO_TAG_ASSIGNMENT
a conditional variable assignment for phase switching
@ AGEN_TAG_PARAM
parameters
@ SUMO_TAG_VEHICLETRANSFER
@ SUMO_TAG_TAZREL
a relation between two TAZs
@ GNE_TAG_WALK_EDGE
@ SUMO_TAG_DETECTOR_DEFINITION
definition of a detector
@ SUMO_TAG_TAZSOURCE
a source within a district (connection road)
@ SUMO_TAG_CLOSING_LANE_REROUTE
lane of a reroute of type closing
@ SUMO_TAG_RELATION
@ GNE_TAG_PERSONTRIP_EDGE
@ SUMO_TAG_ROUTEFILES
route files
@ AGEN_TAG_BUSSTATION
busStation and bus objects
@ GNE_TAG_ROUTE_EMBEDDED
embedded route (used in NETEDIT)
@ SUMO_TAG_NEIGH
begin/end of the description of a neighboring lane
@ SUMO_TAG_CF_IDMM
@ SUMO_TAG_INDUCTION_LOOP
alternative tag for e1 detector
@ SUMO_TAG_TRAFFIC_LIGHT
a traffic light
@ AGEN_TAG_BUSLINE
bus line
@ SUMO_TAG_VIEWSETTINGS
@ GNE_TAG_RIDE_BUSSTOP
@ SUMO_TAG_CALIBRATOR
A calibrator placed over edge.
@ SUMO_TAG_VIEWPORT
@ SUMO_TAG_ENTRY_EXIT_DETECTOR
alternative tag for e3 detector
@ SUMO_TAG_SPLIT
split something
@ SUMO_TAG_DEL
delete certain element (note: DELETE is a macro)
@ SUMO_TAG_E3DETECTOR
an e3 detector
@ SUMO_TAG_VIEWSETTINGS_LIGHT
@ SUMO_TAG_VSS
A variable speed sign.
@ GNE_TAG_STOPPERSON_EDGE
@ SUMO_TAG_VIEWSETTINGS_POLYS
@ SUMO_TAG_CF_DANIEL1
@ GNE_TAG_WALK_ROUTE
@ SUMO_TAG_PREDECESSOR
Predecessor constraint on switching a rail signal.
@ SUMO_TAG_VIEWSETTINGS_CONTAINERS
@ SUMO_TAG_PERSONFLOW
@ SUMO_TAG_TRIP
a single trip definition (used by router)
@ SUMO_TAG_TAG
@ GNE_TAG_TRANSHIP_CONTAINERSTOP
@ SUMO_TAG_CF_ACC
@ SUMO_TAG_EDGE
begin/end of the description of an edge
@ GNE_TAG_TRANSPORT_EDGE
@ PARTLEFT
The link is a partial left direction.
@ RIGHT
The link is a (hard) right direction.
@ TURN
The link is a 180 degree turn.
@ LEFT
The link is a (hard) left direction.
@ STRAIGHT
The link is a straight direction.
@ TURN_LEFTHAND
The link is a 180 degree turn (left-hand network)
@ PARTRIGHT
The link is a partial right direction.
@ NODIR
The link has no direction (is a dead end link)
@ LINKSTATE_TL_REDYELLOW
The link has red light (must brake) but indicates upcoming green.
@ LINKSTATE_ALLWAY_STOP
This is an uncontrolled, all-way stop link.
@ LINKSTATE_MAJOR
This is an uncontrolled, major link, may pass.
@ LINKSTATE_STOP
This is an uncontrolled, minor link, has to stop.
@ LINKSTATE_TL_YELLOW_MAJOR
The link has yellow light, may pass.
@ LINKSTATE_TL_GREEN_MAJOR
The link has green light, may pass.
@ LINKSTATE_EQUAL
This is an uncontrolled, right-before-left link.
@ LINKSTATE_DEADEND
This is a dead end link.
@ LINKSTATE_ZIPPER
This is an uncontrolled, zipper-merge link.
@ LINKSTATE_TL_OFF_BLINKING
The link is controlled by a tls which is off and blinks, has to brake.
@ LINKSTATE_TL_YELLOW_MINOR
The link has yellow light, has to brake anyway.
@ LINKSTATE_TL_RED
The link has red light (must brake)
@ LINKSTATE_TL_GREEN_MINOR
The link has green light, has to brake.
@ LINKSTATE_MINOR
This is an uncontrolled, minor link, has to brake.
@ LINKSTATE_TL_OFF_NOSIGNAL
The link is controlled by a tls which is off, not blinking, may pass.
@ LCA_KEEPRIGHT
The action is due to the default of keeping right "Rechtsfahrgebot".
@ LCA_UNKNOWN
The action has not been determined.
@ LCA_BLOCKED
blocked in all directions
@ LCA_URGENT
The action is urgent (to be defined by lc-model)
@ LCA_STAY
Needs to stay on the current lane.
@ LCA_SUBLANE
used by the sublane model
@ LCA_AMBACKBLOCKER
@ LCA_AMBLOCKINGLEADER
@ LCA_COOPERATIVE
The action is done to help someone else.
@ LCA_OVERLAPPING
The vehicle is blocked being overlapping.
@ LCA_LEFT
Wants go to the left.
@ LCA_MRIGHT
@ LCA_STRATEGIC
The action is needed to follow the route (navigational lc)
@ LCA_AMBACKBLOCKER_STANDING
@ LCA_TRACI
The action is due to a TraCI request.
@ LCA_SPEEDGAIN
The action is due to the wish to be faster (tactical lc)
@ LCA_RIGHT
Wants go to the right.
@ LCA_MLEFT
@ LCA_AMBLOCKINGFOLLOWER
@ SUMO_ATTR_TMP4
@ SUMO_ATTR_CF_W99_CC9
@ SUMO_ATTR_GCC_GAIN_GAP_DOT_CACC
@ SUMO_ATTR_CF_EIDM_T_ACC_MAX
@ AGEN_ATTR_FREETIMERATE
@ SUMO_ATTR_CONTAINER_TRIGGERED
@ SUMO_ATTR_STARTUP_DELAY
@ SUMO_ATTR_TRACTIONSUBSTATIONID
@ SUMO_ATTR_PREFER
@ SUMO_ATTR_NOX_ABS
@ SUMO_ATTR_DONE
@ SUMO_ATTR_STARTPOS
@ AGEN_ATTR_RETIREMENT
@ SUMO_ATTR_SOURCE
@ SUMO_ATTR_NODE
@ SUMO_ATTR_COSTS
@ SUMO_ATTR_CF_EIDM_EPSILON_ACC
@ SUMO_ATTR_PARKING
@ SUMO_ATTR_EXTENSION
@ SUMO_ATTR_CF_W99_CC5
@ SUMO_ATTR_FUEL_PERVEH
@ SUMO_ATTR_SAVE_DETECTORS
@ SUMO_ATTR_LCA_PUSHY
@ SUMO_ATTR_PARTIALCHARGE
energy provied by charging station at certain timestep
@ SUMO_ATTR_DISALLOW
@ SUMO_ATTR_LINES
@ SUMO_ATTR_CF_CC_FLATBED_KP
@ SUMO_ATTR_CONV_BOUNDARY
@ SUMO_ATTR_LAST
@ SUMO_ATTR_NUMBER
@ SUMO_ATTR_ALLOW
@ SUMO_ATTR_ARRIVALSPEED
@ SUMO_ATTR_AVERAGESPEED
@ SUMO_ATTR_GCC_GAIN_SPEED
@ SUMO_ATTR_LANE
@ SUMO_ATTR_NOISE
MSMeanData_Harmonoise.
@ SUMO_ATTR_DATAFILES
route files
@ SUMO_ATTR_NET_OFFSET
@ SUMO_ATTR_GEAREFFICIENCY
Gear efficiency.
@ SUMO_ATTR_NARGS
The number of arguments for a condition function.
@ SUMO_ATTR_EMISSIONCLASS
@ SUMO_ATTR_REMOVE
@ SUMO_ATTR_CONSTRAINTS
@ SUMO_ATTR_JM_IGNORE_FOE_SPEED
@ SUMO_ATTR_ARRIVALLANE
@ SUMO_ATTR_DEPART
@ SUMO_ATTR_CONT
@ SUMO_ATTR_CF_CC_LAMBDA
@ SUMO_ATTR_NODES
a list of node ids, used for controlling joining
@ AGEN_ATTR_DEP_VARIATION
@ SUMO_ATTR_ORIG_BOUNDARY
@ SUMO_ATTR_DEPARTEDGE
@ SUMO_ATTR_CF_CC_FLATBED_D
@ SUMO_ATTR_MESO_TLS_FLOW_PENALTY
@ SUMO_ATTR_LATEST_END
The maximum time within the cycle for switching (for coordinated actuation)
@ SUMO_ATTR_TLLINKINDEX2
link: the index of the opposite direction link of a pedestrian crossing
@ SUMO_ATTR_LON
@ GNE_ATTR_TO_CONTAINERSTOP
to busStop (used by containerPlans)
@ SUMO_ATTR_COLLISION
@ SUMO_ATTR_RNG_INSERTIONCONTROL
@ GNE_ATTR_CENTER_AFTER_CREATION
flag to center camera after element creation
@ SUMO_ATTR_TOTALENERGYCHARGED
@ SUMO_ATTR_MESO_JUNCTION_CONTROL
@ SUMO_ATTR_CONFIGFILE
@ SUMO_ATTR_REFID
@ SUMO_ATTR_NUMEDGES
@ SUMO_ATTR_HREF
@ SUMO_ATTR_VEHSPERHOUR
@ SUMO_ATTR_VIALONLAT
@ SUMO_ATTR_HC_NORMED
@ SUMO_ATTR_ARRIVALEDGE
@ SUMO_ATTR_RED
red duration of a phase
@ SUMO_ATTR_JM_IGNORE_KEEPCLEAR_TIME
@ SUMO_ATTR_SPEED
@ SUMO_ATTR_LCA_COOPERATIVE_SPEED
@ SUMO_ATTR_STARTED
@ SUMO_ATTR_LINKDETAIL
@ SUMO_ATTR_NETFILE
net file
@ AGEN_ATTR_LABORDEMAND
@ AGEN_ATTR_CAPACITY
@ SUMO_ATTR_FUEL_NORMED
@ SUMO_ATTR_CO_PERVEH
@ SUMO_ATTR_MAXIMUMPOWER
Maximum Power.
@ SUMO_ATTR_ARRIVALTIME
@ SUMO_ATTR_ENERGYCONSUMED
Energy consumed.
@ GNE_ATTR_STOPOFFSET
stop offset (virtual, used by edge and lanes)
@ SUMO_ATTR_WAITINGTIME
@ SUMO_ATTR_INTERNALBATTERYRESISTANCE
Internal battery resistance.
@ SUMO_ATTR_WIDTHRESOLUTION
@ SUMO_ATTR_VALUE
@ SUMO_ATTR_CF_EIDM_T_LOOK_AHEAD
@ AGEN_ATTR_CHILDREN
@ SUMO_ATTR_ENERGYCHARGEDSTOPPED
Energy charged stopped.
@ SUMO_ATTR_VIA
@ SUMO_ATTR_OVERLAPTRAVELTIME
@ SUMO_ATTR_CF_CC_FLATBED_KA
@ SUMO_ATTR_RNG_DRIVERSTATE
@ SUMO_ATTR_CORNERDETAIL
@ SUMO_ATTR_CF_CC_PLOEG_KP
@ SUMO_ATTR_ELECTRICITY_ABS
@ SUMO_ATTR_THRESHOLD
@ SUMO_ATTR_CF_WIEDEMANN_SECURITY
@ SUMO_ATTR_LCA_ASSERTIVE
@ SUMO_ATTR_RADIUS
The turning radius at an intersection in m.
@ SUMO_ATTR_LCA_LANE_DISCIPLINE
@ SUMO_ATTR_REPLACED_AT_TIME
@ SUMO_ATTR_TRAIN_TYPE
@ SUMO_ATTR_NEXT_EDGES
@ SUMO_ATTR_FILE
@ SUMO_ATTR_PMX_PERVEH
@ SUMO_ATTR_PROCEDURE
@ SUMO_ATTR_INDIRECT
Whether this connection is an indirect (left) turn.
@ SUMO_ATTR_CONTAINER_STOP
@ SUMO_ATTR_CF_EIDM_USEVEHDYNAMICS
@ SUMO_ATTR_RECTANGULAR_LANE_CUT
@ SUMO_ATTR_PARKING_AREA
@ SUMO_ATTR_VIAXY
@ GNE_ATTR_OPPOSITE
neighboring lane, simplified lane attr instead of child element
@ SUMO_ATTR_Y
@ SUMO_ATTR_CF_IDMM_ADAPT_TIME
@ SUMO_ATTR_SUBSTATIONID
id of a traction substation substation
@ SUMO_ATTR_FROM_LANE
@ SUMO_ATTR_LANE_CHANGE_MODEL
@ SUMO_ATTR_Z
@ SUMO_ATTR_CF_KERNER_PHI
@ SUMO_ATTR_EDGE
@ SUMO_ATTR_LCA_TURN_ALIGNMENT_DISTANCE
@ SUMO_ATTR_GC_GAIN_SPACE
@ SUMO_ATTR_JM_STOPLINE_GAP
@ SUMO_ATTR_SCALE
@ SUMO_ATTR_FROMJUNCTION
@ SUMO_ATTR_STOPPINGTRESHOLD
Stopping treshold.
@ SUMO_ATTR_JAM_DIST_THRESHOLD
@ SUMO_ATTR_LANECHANGEDFROM
@ SUMO_ATTR_DEPARTPOS_LAT
@ SUMO_ATTR_PARKING_LENGTH
@ SUMO_ATTR_MESO_OVERTAKING
@ SUMO_ATTR_BUS_STOP
@ SUMO_ATTR_CF_EIDM_C_COOLNESS
@ SUMO_ATTR_MAXIMUMTORQUE
Maximum torque.
@ SUMO_ATTR_POSONLANE
Position on lane.
@ SUMO_ATTR_CF_EIDM_SIG_ERROR
@ SUMO_ATTR_TRAIN_STOP
@ SUMO_ATTR_TRACK_VEHICLES
@ SUMO_ATTR_HC_PERVEH
@ SUMO_ATTR_RESPONSE
@ SUMO_ATTR_LCA_PUSHYGAP
@ SUMO_ATTR_ENDPOS
@ SUMO_ATTR_CA_GAIN_GAP_CACC
@ SUMO_ATTR_TARGETLANE
@ SUMO_ATTR_LCA_LOOKAHEADLEFT
@ SUMO_ATTR_LIMIT_TURN_SPEED
@ SUMO_ATTR_CHECKLANEFOES_ROUNDABOUT
@ SUMO_ATTR_APPARENTDECEL
@ SUMO_ATTR_VOLTAGE
voltage of the traction substation [V]
@ GNE_ATTR_FLOWPARAMETERS
flow parameters (integer for mask end, number, etc...)
@ GNE_ATTR_PARENT
parent of an additional element
@ SUMO_ATTR_MAXSPEED_LAT
@ SUMO_ATTR_OFFSET
@ SUMO_ATTR_GC_GAIN_GAP_DOT_CACC
@ SUMO_ATTR_LCA_SPEEDGAIN_PARAM
@ SUMO_ATTR_CO2_NORMED
@ SUMO_ATTR_X
@ SUMO_ATTR_ARRIVALPOS
@ AGEN_ATTR_OUTGOING
@ SUMO_ATTR_SPLIT
@ SUMO_ATTR_TMP3
@ SUMO_ATTR_AVOID_OVERLAP
@ SUMO_ATTR_ACTTYPE
@ SUMO_ATTR_ACTIONSTEPLENGTH
@ SUMO_ATTR_TLLAYOUT
node: the layout of the traffic light program
@ SUMO_ATTR_WAUT_ID
@ SUMO_ATTR_JM_IGNORE_IDS
@ AGEN_ATTR_PEOPLENBR
@ SUMO_ATTR_CENTER_Y
@ SUMO_ATTR_CF_CC_PLOEG_H
@ SUMO_ATTR_MAXIMUMBATTERYCAPACITY
Maxium battery capacity.
@ GNE_ATTR_SELECTED
element is selected
@ SUMO_ATTR_PROBS
@ SUMO_ATTR_STYLE
@ SUMO_ATTR_NOX_NORMED
@ SUMO_ATTR_YELLOW
yellow duration of a phase
@ SUMO_ATTR_TRAVELTIME
@ SUMO_ATTR_CUSTOMSHAPE
whether a given shape is user-defined
@ SUMO_ATTR_LCA_MAXDISTLATSTANDING
@ SUMO_ATTR_LCA_IMPATIENCE
@ SUMO_ATTR_BEGIN
weights: time range begin
@ SUMO_ATTR_MINGAP
@ SUMO_ATTR_LCA_COOPERATIVE_ROUNDABOUT
@ SUMO_ATTR_INTLANES
@ SUMO_ATTR_SPEEDREL
@ SUMO_ATTR_SPLIT_VTYPE
@ SUMO_ATTR_VEHICLEEXTENSION
vehicle extension time of a phase
@ SUMO_ATTR_WITH_INTERNAL
@ SUMO_ATTR_JM_IGNORE_TYPES
@ GNE_ATTR_VTYPE_DISTRIBUTION
vehicle type distribution
@ AGEN_ATTR_PROP
@ SUMO_ATTR_EDGES
the edges of a route
@ GNE_ATTR_POISSON
poisson definition (used in flow)
@ AGEN_ATTR_UNI_RAND_TRAFFIC
@ SUMO_ATTR_OFF
@ SUMO_ATTR_ROUTEPROBE
@ SUMO_ATTR_LINEWIDTH
@ GNE_ATTR_PARAMETERS
parameters "key1=value1|key2=value2|...|keyN=valueN"
@ SUMO_ATTR_CA_GAIN_GAP_DOT_CACC
@ SUMO_ATTR_POSITION_LAT
@ AGEN_ATTR_HOUSEHOLDS
@ SUMO_ATTR_PMX_ABS
@ SUMO_ATTR_FUEL
@ SUMO_ATTR_MINWIDTH
@ SUMO_ATTR_ODOMETER
@ SUMO_ATTR_GENERATE_WALKS
@ SUMO_ATTR_JM_DRIVE_AFTER_RED_TIME
@ SUMO_ATTR_HEADWAY_TIME_CACC_TO_ACC
@ SUMO_ATTR_FRINGE
Fringe type of node.
@ SUMO_ATTR_START_PROG
@ SUMO_ATTR_ONEWAY
@ SUMO_ATTR_OVERHEAD_WIRE_FORBIDDEN
forbidden lanes for overhead wire segment
@ AGEN_ATTR_INHABITANTS
@ SUMO_ATTR_BIDI
@ SUMO_ATTR_MASS
@ SUMO_ATTR_CF_CC_OMEGAN
@ SUMO_ATTR_CONTAINER_NUMBER
@ SUMO_ATTR_EXPECTED
@ SUMO_ATTR_AGGREGATE
@ SUMO_ATTR_PROHIBITED
@ SUMO_ATTR_HALTING_TIME_THRESHOLD
@ SUMO_ATTR_CF_CC_C1
@ SUMO_ATTR_TOLONLAT
@ AGEN_ATTR_OPENING
@ SUMO_ATTR_ROLLDRAGCOEFFICIENT
Roll Drag coefficient.
@ SUMO_ATTR_ORIGIN
@ SUMO_ATTR_TMP2
@ SUMO_ATTR_GEO
@ SUMO_ATTR_LIMIT
@ SUMO_ATTR_OVERHEAD_WIRE_CLAMP_END
id of the overhead wire segment, to the end of which the overhead wire clamp is connected
@ SUMO_ATTR_CF_W99_CC8
@ SUMO_ATTR_PRIORITY
@ SUMO_ATTR_ELECTRICITY_PERVEH
@ SUMO_ATTR_CA_GAIN_SPACE
@ SUMO_ATTR_LINE
@ SUMO_ATTR_CHARGING_STATION
@ SUMO_ATTR_LOADING_DURATION
@ SUMO_ATTR_CF_IDM_DELTA
@ SUMO_ATTR_CF_EIDM_MAX_VEH_PREVIEW
@ SUMO_ATTR_MESO_TAUFF
@ GNE_ATTR_STOPOEXCEPTION
stop exceptions (virtual, used by edge and lanes)
@ SUMO_ATTR_LCA_SPEEDGAIN_LOOKAHEAD
@ SUMO_ATTR_LCA_MAXSPEEDLATFACTOR
@ SUMO_ATTR_ARRIVED
@ SUMO_ATTR_MANEUVER_ANGLE_TIMES
Class specific timing values for vehicle manoeuvering through angle ranges.
@ SUMO_ATTR_PHASE
@ SUMO_ATTR_V
@ SUMO_ATTR_ROUTES
@ SUMO_ATTR_CF_CC_CCACCEL
@ SUMO_ATTR_GEOSHAPE
@ SUMO_ATTR_CONTAINERSPERHOUR
@ SUMO_ATTR_NUMLANES
@ SUMO_ATTR_TELEPORTED
@ SUMO_ATTR_LANES
@ SUMO_ATTR_DEFAULT
@ SUMO_ATTR_ARRIVALSPEEDBRAKING
@ SUMO_ATTR_CF_EIDM_T_REACTION
@ GNE_ATTR_MODIFICATION_STATUS
whether a feature has been loaded,guessed,modified or approved
@ SUMO_ATTR_MODES
@ SUMO_ATTR_CF_EIDM_T_PERSISTENCE_ESTIMATE
@ GNE_ATTR_CLOSE_SHAPE
Close shape of a polygon (Used by GNEPolys)
@ SUMO_ATTR_CONSTANTPOWERINTAKE
Constant Power Intake.
@ SUMO_ATTR_VTYPES
@ SUMO_ATTR_EXITTIMES
@ SUMO_ATTR_CF_PWAGNER2009_TAULAST
@ SUMO_ATTR_ZOOM
@ SUMO_ATTR_TOTALENERGYCHARGED_VEHICLE
total energy charged into a single vehicle
@ SUMO_ATTR_DESTINATION
@ SUMO_ATTR_TIME_TO_TELEPORT_BIDI
@ AGEN_ATTR_INCOMING
@ SUMO_ATTR_CF_CC_PLOEG_KD
@ SUMO_ATTR_CF_CC_TAU
@ SUMO_ATTR_OVERHEAD_WIRECLAMP_END
id of the overhead wire, to the end of which the overhead wire clamp is connected
@ SUMO_ATTR_SHAPE
edge: the shape in xml-definition
@ SUMO_ATTR_GC_GAIN_GAP_CACC
@ SUMO_ATTR_LANECHANGEDTO
@ SUMO_ATTR_OVERHEAD_WIRE_SEGMENT
@ SUMO_ATTR_DEPARTPOS
@ SUMO_ATTR_CF_EIDM_SIG_GAP
@ SUMO_ATTR_CAR_FOLLOW_MODEL
@ SUMO_ATTR_CF_EIDM_JERK_MAX
@ SUMO_ATTR_RECUPERATIONEFFICIENCY_BY_DECELERATION
Recuperation efficiency (by deceleration)
@ SUMO_ATTR_LEFTHAND
@ SUMO_ATTR_DECEL
@ SUMO_ATTR_SIGNALS
@ SUMO_ATTR_LCA_MAXSPEEDLATSTANDING
@ SUMO_ATTR_GROUP
@ SUMO_ATTR_JM_DRIVE_AFTER_YELLOW_TIME
@ SUMO_ATTR_WHEELRADIUS
@ SUMO_ATTR_DEST
@ SUMO_ATTR_LCA_KEEPRIGHT_PARAM
@ SUMO_ATTR_WEIGHT
@ SUMO_ATTR_NEXT
succesor phase index
@ SUMO_ATTR_RECUPERATIONEFFICIENCY
Recuperation efficiency (constant)
@ SUMO_ATTR_GUISHAPE
@ SUMO_ATTR_DESIRED_MAXSPEED
@ SUMO_ATTR_REROUTE
@ SUMO_ATTR_JM_IGNORE_FOE_PROB
@ SUMO_ATTR_PERHOUR
@ SUMO_ATTR_RNG_DEVICE_TOC
@ SUMO_ATTR_LEADER_GAP
@ GNE_ATTR_TO_BUSSTOP
to busStop (used by personPlans)
@ SUMO_ATTR_ENDED
@ SUMO_ATTR_VEHICLECLASS
@ SUMO_ATTR_MAX_TRAVELTIME
@ SUMO_ATTR_AIRDRAGCOEFFICIENT
Air drag coefficient.
@ SUMO_ATTR_TLTYPE
node: the type of traffic light
@ SUMO_ATTR_OVERHEAD_WIRECLAMP_LANESTART
id of the overhead wire lane, to the start of which the overhead wire clamp is connected
@ SUMO_ATTR_ACTORCONFIG
@ SUMO_ATTR_JUNCTION
@ SUMO_ATTR_CHARGEINTRANSIT
Allow/disallow charge in transit in Charging Stations.
@ SUMO_ATTR_OVERHEAD_WIRECLAMP_START
id of the overhead wire, to the start of which the overhead wire clamp is connected
@ SUMO_ATTR_ACCELERATION_LAT
@ SUMO_ATTR_COST
@ SUMO_ATTR_MESO_MINOR_PENALTY
@ SUMO_ATTR_ONDEMAND
@ SUMO_ATTR_INCLANES
@ AGEN_ATTR_OUT_TRAFFIC
@ SUMO_ATTR_CHANGE_LEFT
@ SUMO_ATTR_CONTAINER_CAPACITY
@ SUMO_ATTR_INDEX
@ AGEN_ATTR_CARS
@ SUMO_ATTR_CO_ABS
MSMeanData_Emissions.
@ SUMO_ATTR_VCLASSES
@ SUMO_ATTR_FILL
Fill the polygon.
@ SUMO_ATTR_NAME
@ SUMO_ATTR_ARRIVAL
@ SUMO_ATTR_TIMELOSS
@ SUMO_ATTR_CF_CC_XI
@ SUMO_ATTR_EXCEPTIONS
@ SUMO_ATTR_ORIG_PROJ
@ SUMO_ATTR_REQUESTSIZE
@ SUMO_ATTR_CA_OVERRIDE
@ SUMO_ATTR_PERIOD
@ SUMO_ATTR_LAYER
A layer number.
@ SUMO_ATTR_CHECKLANEFOES_ALL
@ SUMO_ATTR_LCA_COOPERATIVE_PARAM
@ SUMO_ATTR_FUEL_ABS
@ SUMO_ATTR_SPREADTYPE
The information about how to spread the lanes from the given position.
@ SUMO_ATTR_COMMAND
@ SUMO_ATTR_LCA_OPPOSITE_PARAM
@ SUMO_ATTR_FINAL_TARGET
The condition expression for switching into this phase when the active phase must end.
@ SUMO_ATTR_TO_TAZ
@ SUMO_ATTR_CHARGINGSTATIONID
Charging Station ID.
@ SUMO_ATTR_CO_NORMED
@ SUMO_ATTR_SLOPE
@ SUMO_ATTR_STARTTIME
@ SUMO_ATTR_CF_CC_CCDECEL
@ SUMO_ATTR_POWERLOSSMAP
A string encoding the power loss map.
@ SUMO_ATTR_HALTING_SPEED_THRESHOLD
@ SUMO_ATTR_FREQUENCY
@ SUMO_ATTR_CENTER
@ SUMO_ATTR_PASS
@ SUMO_ATTR_DEPARTSPEED
@ SUMO_ATTR_GCC_GAIN_SPACE
@ SUMO_ATTR_ANGLE
@ SUMO_ATTR_MAXIMUMRECUPERATIONPOWER
Maximum recuperation power.
@ SUMO_ATTR_ENDOFFSET
@ SUMO_ATTR_HIGHER_SPEED
@ SUMO_ATTR_MINGAP_LAT
@ SUMO_ATTR_ENTERING
@ SUMO_ATTR_TRIP_ID
@ GNE_ATTR_SHAPE_END
last coordinate of edge shape
@ SUMO_ATTR_REF
@ SUMO_ATTR_EMERGENCYDECEL
@ SUMO_ATTR_OVERHEAD_WIRE_CLAMPS
overhead wire clamps for overhead wire segment
@ SUMO_ATTR_CF_CC_FLATBED_H
@ SUMO_ATTR_TO
@ SUMO_ATTR_FROM
@ SUMO_ATTR_CF_W99_CC3
@ SUMO_ATTR_LCA_OVERTAKE_DELTASPEED_FACTOR
@ SUMO_ATTR_SHUT_OFF_STOP
@ SUMO_ATTR_XMLNS
@ SUMO_ATTR_CF_CC_LANES_COUNT
@ SUMO_ATTR_HEIGHT
@ SUMO_ATTR_END
weights: time range end
@ SUMO_ATTR_DETECTORS
@ SUMO_ATTR_PERMITTED
@ SUMO_ATTR_MAXIMUMRECUPERATIONTORQUE
Maximum recuperation torque.
@ SUMO_ATTR_RNG_DEVICE_BT
@ SUMO_ATTR_LCA_SUBLANE_PARAM
@ SUMO_ATTR_JM_CROSSING_GAP
@ SUMO_ATTR_LCA_SIGMA
@ SUMO_ATTR_ROADSIDE_CAPACITY
@ SUMO_ATTR_ACCELERATION
@ SUMO_ATTR_CARRIAGE_LENGTH
@ SUMO_ATTR_LATALIGNMENT
@ SUMO_ATTR_FROM_TAZ
@ SUMO_ATTR_CF_IDM_STEPPING
@ SUMO_ATTR_SIGMA_STEP
@ SUMO_ATTR_ARRIVALTIMEBRAKING
@ SUMO_ATTR_ADDITIONALFILES
additional files
@ SUMO_ATTR_DEPARTLANE
@ GNE_ATTR_STOPINDEX
stop index
@ SUMO_ATTR_CF_IDMM_ADAPT_FACTOR
@ SUMO_ATTR_REPLACED_ON_INDEX
@ SUMO_ATTR_ACTUALBATTERYCAPACITY
@ SUMO_ATTR_VEHICLEMASS
Vehicle mass.
@ AGEN_ATTR_CARPREF
@ SUMO_ATTR_PREFIX
@ SUMO_ATTR_VIAJUNCTIONS
@ SUMO_ATTR_CURRENTLIMIT
current limit of the traction substation [A]
@ SUMO_ATTR_BIKELANEWIDTH
@ SUMO_ATTR_IMPATIENCE
@ SUMO_ATTR_RADIALDRAGCOEFFICIENT
Radial drag coefficient.
@ SUMO_ATTR_COLLISION_MINGAP_FACTOR
@ SUMO_ATTR_LEADER_SPEED
@ SUMO_ATTR_CHANGE_RIGHT
@ SUMO_ATTR_ENERGYCHARGEDINTRANSIT
Energy charged in transit.
@ SUMO_ATTR_JOIN
@ SUMO_ATTR_TLID
link,node: the traffic light id responsible for this link
@ SUMO_ATTR_GEARRATIO
Gear ratio.
@ SUMO_ATTR_VCLASS
@ SUMO_ATTR_ACCEL
@ SUMO_ATTR_ENERGYCHARGED
tgotal of Energy charged
@ SUMO_ATTR_VAPORIZED
@ SUMO_ATTR_BOARDING_DURATION
@ SUMO_ATTR_DISTANCE
@ SUMO_ATTR_EARLY_TARGET
The condition expression for an early switch into this phase.
@ GNE_ATTR_DATASET
data set of a generic data
@ SUMO_ATTR_MESO_TAUJF
@ AGEN_ATTR_CITYSPEED
@ SUMO_ATTR_CF_CC_CONSTSPACING
@ SUMO_ATTR_CF_EIDM_M_FLATNESS
@ SUMO_ATTR_FROMXY
@ SUMO_ATTR_NOX_PERVEH
@ SUMO_ATTR_CF_W99_CC2
@ SUMO_ATTR_OUTPUT
@ SUMO_ATTR_SHOW_DETECTOR
@ SUMO_ATTR_CF_W99_CC4
@ SUMO_ATTR_JM_SIGMA_MINOR
@ SUMO_ATTR_FOES
@ SUMO_ATTR_CF_W99_CC6
@ SUMO_ATTR_CHARGINGPOWER
@ SUMO_ATTR_ID_AFTER
@ SUMO_ATTR_PROB
@ SUMO_ATTR_CF_EIDM_M_BEGIN
@ GNE_ATTR_BIDIR
whether an edge is part of a bidirectional railway
@ SUMO_ATTR_FRIENDLY_POS
@ SUMO_ATTR_CF_EIDM_T_PERSISTENCE_DRIVE
@ SUMO_ATTR_TIME_TO_TELEPORT
@ SUMO_ATTR_SIDEWALKWIDTH
@ SUMO_ATTR_SPEEDFACTOR
@ SUMO_ATTR_CA_GAIN_SPEED
@ SUMO_ATTR_ONROAD
@ SUMO_ATTR_MAXIMUMSPEED
Maximum speed.
@ SUMO_ATTR_LAT
@ SUMO_ATTR_OVERHEAD_WIRE_CLAMP_START
id of the overhead wire segment, to the start of which the overhead wire clamp is connected
@ SUMO_ATTR_OVERHEAD_WIRE_RESISTIVITY
resistivity of overhead wires
@ SUMO_ATTR_WALKFACTOR
@ SUMO_ATTR_DETERMINISTIC
@ SUMO_ATTR_EXPECTED_CONTAINERS
@ SUMO_ATTR_TO_LANE
@ SUMO_ATTR_VEHICLE
@ SUMO_ATTR_MIN_SAMPLES
@ SUMO_ATTR_UNCONTROLLED
@ SUMO_ATTR_RECUPERATIONENABLE
@ AGEN_ATTR_HOUR
@ SUMO_ATTR_HC_ABS
@ SUMO_ATTR_CF_EIDM_SIG_LEADER
@ SUMO_ATTR_JUNCTION_ID
@ SUMO_ATTR_OCCUPANCY
@ SUMO_ATTR_ENTERED
@ SUMO_ATTR_SAMPLEDSECONDS
MSMeanData_Net.
@ SUMO_ATTR_TYPE
@ SUMO_ATTR_CF_CC_KP
@ SUMO_ATTR_CO2_PERVEH
@ SUMO_ATTR_CENTER_Z
@ SUMO_ATTR_SAVINGS
@ SUMO_ATTR_TOXY
@ SUMO_ATTR_LENGTH
@ AGEN_ATTR_CLOSING
@ AGEN_ATTR_OUT_WORKPOSITION
@ SUMO_ATTR_ROUTE
@ SUMO_ATTR_VERSION
@ SUMO_ATTR_CHARGINGSTEPS
number of steps that a vehicle is charging
@ SUMO_ATTR_CHARGINGEND
timesteps in which charging ends
@ SUMO_ATTR_APPLYDRIVERSTATE
@ SUMO_ATTR_DEPARTED
@ SUMO_ATTR_PERSON_NUMBER
@ AGEN_ATTR_ENDAGE
@ SUMO_ATTR_COLOR
A color information.
@ SUMO_ATTR_EFFICIENCY
Eficiency of the charge in Charging Stations.
@ SUMO_ATTR_CF_PWAGNER2009_APPROB
@ SUMO_ATTR_MAXSPEED
@ SUMO_ATTR_CHARGINGBEGIN
timestep in which charging begins
@ SUMO_ATTR_ID
@ SUMO_ATTR_SIGMA
@ SUMO_ATTR_VISIBLE
@ SUMO_ATTR_UNTIL
@ SUMO_ATTR_ACTION
@ GNE_ATTR_DEFAULT_VTYPE_MODIFIED
Flag to check if a default VType was modified.
@ SUMO_ATTR_MAXDURATION
maximum duration of a phase
@ SUMO_ATTR_INTERPOLATED
@ SUMO_ATTR_RIGHT_OF_WAY
How to compute right of way.
@ SUMO_ATTR_K
@ SUMO_ATTR_TMP1
@ GNE_ATTR_SHAPE_START
first coordinate of edge shape
@ SUMO_ATTR_LCSTATE
The state of the lanechange model.
@ AGEN_ATTR_POPULATION
@ SUMO_ATTR_OSGFILE
@ SUMO_ATTR_LANEDENSITY
@ SUMO_ATTR_LCA_OVERTAKE_RIGHT
@ SUMO_ATTR_ARRIVALPOS_LAT
@ SUMO_ATTR_LCA_ACCEL_LAT
@ SUMO_ATTR_CF_W99_CC7
@ SUMO_ATTR_DISCARD
@ SUMO_ATTR_LCA_STRATEGIC_PARAM
@ SUMO_ATTR_PMX_NORMED
@ SUMO_ATTR_PROGRAMID
@ SUMO_ATTR_CF_W99_CC1
@ SUMO_ATTR_OVERHEADWIREID
@ SUMO_ATTR_ELECTRICITY_NORMED
@ SUMO_ATTR_TAU
@ SUMO_ATTR_FUNCTION
@ SUMO_ATTR_CROSSING
@ SUMO_ATTR_VOLTAGESOURCE
a voltage source on the overhead wire segment [bool]
@ SUMO_ATTR_CENTER_X
@ SUMO_ATTR_MAXWIDTH
@ SUMO_ATTR_MESO_TAUFJ
@ SUMO_ATTR_VISIBILITY_DISTANCE
foe visibility distance of a link
@ SUMO_ATTR_ALPHACIRCUITSOLVER
@ SUMO_ATTR_PROHIBITOR
@ SUMO_ATTR_OPEN_ENTRY
@ SUMO_ATTR_INSERTIONCHECKS
@ SUMO_ATTR_IMGFILE
@ SUMO_ATTR_TOTALENERGYREGENERATED
Total energy regenerated.
@ AGEN_ATTR_MAX_TRIP_DURATION
@ SUMO_ATTR_RNG_ROUTEHANDLER
@ SUMO_ATTR_TRIGGERED
@ SUMO_ATTR_MESO_TAUJJ
@ SUMO_ATTR_CONTROLLED_INNER
@ SUMO_ATTR_DURATION
@ SUMO_ATTR_CONTPOS
@ SUMO_ATTR_WIDTH
@ SUMO_ATTR_DENSITY
@ SUMO_ATTR_CROSSING_EDGES
the edges crossed by a pedestrian crossing
@ SUMO_ATTR_FROMLONLAT
@ SUMO_ATTR_SYNCHRON
@ SUMO_ATTR_DIR
The abstract direction of a link.
@ SUMO_ATTR_RNG_DEVICE
@ SUMO_ATTR_JM_IGNORE_JUNCTION_FOE_PROB
@ SUMO_ATTR_TLS_IGNORE_INTERNAL_JUNCTION_JAM
@ SUMO_ATTR_PERSON_CAPACITY
@ SUMO_ATTR_TLLINKINDEX
link: the index of the link within the traffic light
@ SUMO_ATTR_CURRENTFROMOVERHEADWIRE
@ SUMO_ATTR_PROPULSIONEFFICIENCY
Propulsion efficiency.
@ SUMO_ATTR_GC_GAIN_SPEED
@ SUMO_ATTR_AMOUNT
MSMeanData_Amitran.
@ AGEN_ATTR_UNEMPLOYEMENT
@ SUMO_ATTR_MINDURATION
@ SUMO_ATTR_TOTALENERGYCONSUMED
Total energy consumed.
@ AGEN_ATTR_IN_TRAFFIC
@ SUMO_ATTR_LEADER_ID
@ SUMO_ATTR_REPNUMBER
@ SUMO_ATTR_REQUEST
@ SUMO_ATTR_GCC_GAIN_GAP_CACC
@ SUMO_ATTR_COUNT
@ SUMO_ATTR_LCA_KEEPRIGHT_ACCEPTANCE_TIME
@ AGEN_ATTR_RATE
@ SUMO_ATTR_CHECK
The expression for a condition assignment.
@ SUMO_ATTR_MESO_TLS_PENALTY
@ SUMO_ATTR_KEY
@ SUMO_ATTR_REPEAT
@ SUMO_ATTR_REF_TIME
@ SUMO_ATTR_SAVE_CONDITIONS
@ SUMO_ATTR_INTERNALMOMENTOFINERTIA
Internal moment of inertia.
@ SUMO_ATTR_INTENDED
@ SUMO_ATTR_OVERHEAD_WIRE_SEGMENTS
@ SUMO_ATTR_KEEP_CLEAR
Whether vehicles must keep the junction clear.
@ AGEN_ATTR_MAX_FOOT_DIST
@ AGEN_ATTR_BEGINAGE
@ SUMO_ATTR_POSITION
@ SUMO_ATTR_LCA_EXPERIMENTAL1
@ SUMO_ATTR_LOCOMOTIVE_LENGTH
@ SUMO_ATTR_CO2_ABS
@ SUMO_ATTR_SCHEMA_LOCATION
@ SUMO_ATTR_SC_GAIN
@ SUMO_ATTR_TMP5
@ SUMO_ATTR_INTERNAL_JUNCTIONS_VEHICLE_WIDTH
@ SUMO_ATTR_NOTHING
invalid attribute
@ SUMO_ATTR_TIMESTOPPED
Time stopped.
@ SUMO_ATTR_CYCLETIME
@ SUMO_ATTR_STATE
The state of a link.
@ SUMO_ATTR_SC_GAIN_CACC
@ SUMO_ATTR_ROUTEFILES
route files
@ SUMO_ATTR_JM_DRIVE_RED_SPEED
@ SUMO_ATTR_CHARGEDELAY
Delay in the charge of charging stations.
@ SUMO_ATTR_LCA_TIME_TO_IMPATIENCE
@ SUMO_ATTR_VOLTAGEOFOVERHEADWIRE
@ SUMO_ATTR_JM_TIMEGAP_MINOR
@ SUMO_ATTR_FRICTION
@ SUMO_ATTR_TIME
trigger: the time of the step
@ SUMO_ATTR_WALKINGAREAS
@ SUMO_ATTR_WRITE_ATTRIBUTES
@ SUMO_ATTR_NOMINALBATTERYVOLTAGE
Nominal battery voltage.
@ SUMO_ATTR_FRONTSURFACEAREA
Front surface area.
@ SUMO_ATTR_ACTIVE
@ SUMO_ATTR_CARRIAGE_GAP
@ SUMO_ATTR_ID_BEFORE
@ SUMO_ATTR_OVERHEADWIRECHARGINGPOWER
@ SUMO_ATTR_CF_CC_FLATBED_KV
@ GNE_ATTR_SHIFTLANEINDEX
shift lane index (only used by elements over lanes)
@ SUMO_ATTR_TOJUNCTION
@ SUMO_ATTR_CONDITIONS
@ SUMO_ATTR_OVERHEAD_WIRECLAMP_LANEEND
id of the overhead wire lane, to the end of which the overhead wire clamp is connected
@ SUMO_ATTR_CHARGING_STATUS
@ SUMO_ATTR_DETECT_PERSONS
@ SUMO_ATTR_SC_MIN_GAP
@ SUMO_ATTR_EXCLUDE_EMPTY
@ SUMO_ATTR_SPEEDDEV
@ SUMO_ATTR_CF_WIEDEMANN_ESTIMATION
@ SUMO_ATTR_EDGESFILE
@ SUMO_ATTR_RELATIVEPATH
@ SUMO_ATTR_LEFT
@ SUMO_ATTR_PERSONSPERHOUR
@ SUMO_ATTR_SHUT_OFF_AUTO
engine gets switched off if stopping duration exceeds value
@ SUMO_ATTR_EARLIEST_END
The minimum time within the cycle for switching (for coordinated actuation)
@ SUMO_ATTR_LCA_SPEEDGAINRIGHT
static StringBijection< LaneSpreadFunction > LaneSpreadFunctions
lane spread functions
static bool isValidTypeID(const std::string &value)
whether the given string is a valid id for an edge or vehicle type
static StringBijection< LaneSpreadFunction >::Entry laneSpreadFunctionValues[]
lane spread function values
static StringBijection< SumoXMLTag > CarFollowModels
car following models
static StringBijection< LaneChangeAction > LaneChangeActions
lane change actions
static StringBijection< SumoXMLNodeType > NodeTypes
node types
static std::string getEdgeIDFromLane(const std::string laneID)
return edge id when given the lane ID
static const char AllowedTLS_linkStatesInitializer[]
all allowed characters for phase state
static StringBijection< InsertionCheck > InsertionChecks
traffic light layouts
static StringBijection< TrafficLightType > TrafficLightTypes
traffic light types
static StringBijection< LinkState >::Entry linkStateValues[]
link state values
static StringBijection< PersonMode > PersonModeValues
person modes
static StringBijection< LinkState > LinkStates
link states
static StringBijection< LaneChangeModel >::Entry laneChangeModelValues[]
lane change model values
static bool isValidVehicleID(const std::string &value)
whether the given string is a valid id for a vehicle or flow
static StringBijection< InsertionCheck >::Entry insertionCheckValues[]
traffic light layout values
static StringBijection< int >::Entry tags[]
The names of SUMO-XML elements (for passing to GenericSAXHandler)
static StringBijection< ParkingType >::Entry parkingTypeValues[]
lane spread function values
static bool isValidListOfNetIDs(const std::string &value)
whether the given string is a valid list of id for a network (empty aren't allowed)
static bool isValidFilename(const std::string &value)
whether the given string is a valid attribute for a filename (for example, a name)
static StringBijection< SumoXMLEdgeFunc >::Entry sumoEdgeFuncValues[]
edge function values
static const std::string ALLOWED_TLS_LINKSTATES
all allowed characters for phase state
static StringBijection< SumoXMLEdgeFunc > EdgeFunctions
edge functions
static bool isValidAdditionalID(const std::string &value)
whether the given string is a valid id for an additional object
static StringBijection< LaneChangeAction >::Entry laneChangeActionValues[]
lane change action values
static StringBijection< TrafficLightLayout > TrafficLightLayouts
traffic light layouts
static StringBijection< TrainType > TrainTypes
train types
static StringBijection< int >::Entry attrs[]
The names of SUMO-XML attributes (for passing to GenericSAXHandler)
static bool isValidDetectorID(const std::string &value)
whether the given string is a valid id for an detector
static StringBijection< PersonMode >::Entry personModeValuesInitializer[]
person mode values
static StringBijection< TrafficLightLayout >::Entry trafficLightLayoutValues[]
traffic light layout values
static StringBijection< ParkingType > ParkingTypes
parking types
static bool isValidListOfTypeID(const std::string &value)
whether the given string is a valid list of ids for an edge or vehicle type (empty aren't allowed)
static StringBijection< FringeType >::Entry fringeTypeValuesInitializer[]
lane spread function values
static StringBijection< LinkDirection >::Entry linkDirectionValues[]
link direction values
static StringBijection< TrainType >::Entry trainTypeValues[]
train type values values
static StringBijection< int > Tags
The names of SUMO-XML elements for use in netbuild.
static int getIndexFromLane(const std::string laneID)
return lane index when given the lane ID
static StringBijection< TrafficLightType >::Entry trafficLightTypesValues[]
traffic light types values
static StringBijection< LaneChangeModel > LaneChangeModels
lane change models
static bool isValidNetID(const std::string &value)
whether the given string is a valid id for a network element
static StringBijection< SumoXMLTag >::Entry carFollowModelValues[]
car follwing model values
static bool isValidParameterKey(const std::string &value)
whether the given string is a valid key for a parameter
static StringBijection< RightOfWay > RightOfWayValues
righ of way algorithms
static StringBijection< LinkDirection > LinkDirections
link directions
static StringBijection< RightOfWay >::Entry rightOfWayValuesInitializer[]
lane spread function values
static StringBijection< SumoXMLNodeType >::Entry sumoNodeTypeValues[]
containers for the different SUMOXMLDefinitions
static std::string getJunctionIDFromInternalEdge(const std::string internalEdge)
return the junction id when given an edge of type internal, crossing or WalkingArea
static bool isValidAttribute(const std::string &value)
whether the given string is a valid attribute for a certain key (for example, a name)
static StringBijection< int > Attrs
The names of SUMO-XML attributes for use in netbuild.
static StringBijection< FringeType > FringeTypeValues
fringe types
std::vector< std::string > getVector()
return vector of strings
static int toInt(const std::string &sData)
converts a string into the integer value described by it by calling the char-type converter,...