SUMO - Simulation of Urban MObility
SUMOXMLDefinitions.cpp
Go to the documentation of this file.
00001 /****************************************************************************/
00012 // Definitions of elements and attributes known by SUMO
00013 /****************************************************************************/
00014 // SUMO, Simulation of Urban MObility; see http://sumo.sourceforge.net/
00015 // Copyright (C) 2001-2012 DLR (http://www.dlr.de/) and contributors
00016 /****************************************************************************/
00017 //
00018 //   This file is part of SUMO.
00019 //   SUMO is free software: you can redistribute it and/or modify
00020 //   it under the terms of the GNU General Public License as published by
00021 //   the Free Software Foundation, either version 3 of the License, or
00022 //   (at your option) any later version.
00023 //
00024 /****************************************************************************/
00025 
00026 
00027 // ===========================================================================
00028 // included modules
00029 // ===========================================================================
00030 #ifdef _MSC_VER
00031 #include <windows_config.h>
00032 #else
00033 #include <config.h>
00034 #endif
00035 
00036 #include "SUMOXMLDefinitions.h"
00037 #include <utils/common/StringBijection.h>
00038 
00039 #ifdef CHECK_MEMORY_LEAKS
00040 #include <foreign/nvwa/debug_new.h>
00041 #endif // CHECK_MEMORY_LEAKS
00042 
00043 
00044 // ===========================================================================
00045 // definitions
00046 // ===========================================================================
00047 
00048 StringBijection<int>::Entry SUMOXMLDefinitions::tags[] = {
00049     { "edge",             SUMO_TAG_EDGE },
00050     { "lane",             SUMO_TAG_LANE },
00051     { "poi",              SUMO_TAG_POI },
00052     { "poly",             SUMO_TAG_POLY },
00053     { "junction",         SUMO_TAG_JUNCTION },
00054     { "e1-detector",      SUMO_TAG_E1DETECTOR__DEPRECATED },
00055     { "e1Detector",       SUMO_TAG_E1DETECTOR },
00056     { "inductionLoop",    SUMO_TAG_INDUCTION_LOOP },
00057     { "e2-detector",      SUMO_TAG_E2DETECTOR__DEPRECATED },
00058     { "e2Detector",       SUMO_TAG_E2DETECTOR },
00059     { "laneAreaDetector", SUMO_TAG_LANE_AREA_DETECTOR },
00060     { "e3-detector",      SUMO_TAG_E3DETECTOR__DEPRECATED },
00061     { "e3Detector",       SUMO_TAG_E3DETECTOR },
00062     { "entryExitDetector", SUMO_TAG_ENTRY_EXIT_DETECTOR },
00063     { "meandata-edge",    SUMO_TAG_MEANDATA_EDGE__DEPRECATED },
00064     { "edgeData",         SUMO_TAG_MEANDATA_EDGE },
00065     { "meandata-lane",    SUMO_TAG_MEANDATA_LANE__DEPRECATED },
00066     { "laneData",         SUMO_TAG_MEANDATA_LANE },
00067 
00068 #ifdef _MESSAGES
00069     { "msgemitter",       SUMO_TAG_MSG_EMITTER },
00070 #endif
00071     { "det_entry",        SUMO_TAG_DET_ENTRY__DEPRECATED },
00072     { "detEntry",         SUMO_TAG_DET_ENTRY },
00073     { "det_exit",         SUMO_TAG_DET_EXIT__DEPRECATED },
00074     { "detExit",          SUMO_TAG_DET_EXIT },
00075     { "edgeFollowDetector", SUMO_TAG_EDGEFOLLOWDETECTOR },
00076     { "instantInductionLoop", SUMO_TAG_INSTANT_INDUCTION_LOOP },
00077     { "variableSpeedSign", SUMO_TAG_VSS },
00078     { "calibrator",       SUMO_TAG_CALIBRATOR },
00079     { "rerouter",         SUMO_TAG_REROUTER },
00080     { "busStop",          SUMO_TAG_BUS_STOP },
00081     { "vtypeprobe",       SUMO_TAG_VTYPEPROBE__DEPRECATED },
00082     { "vTypeProbe",       SUMO_TAG_VTYPEPROBE },
00083     { "routeprobe",       SUMO_TAG_ROUTEPROBE__DEPRECATED },
00084     { "routeProbe",       SUMO_TAG_ROUTEPROBE },
00085     { "vehicle",          SUMO_TAG_VEHICLE },
00086     { "vtype",            SUMO_TAG_VTYPE__DEPRECATED },
00087     { "vType",            SUMO_TAG_VTYPE },
00088     { "route",            SUMO_TAG_ROUTE },
00089     { "succ",             SUMO_TAG_SUCC },
00090     { "succlane",         SUMO_TAG_SUCCLANE },
00091     { "logicitem",        SUMO_TAG_LOGICITEM }, // deprecated
00092     { "row-logic",        SUMO_TAG_ROWLOGIC__DEPRECATED }, // deprecated
00093     { "request",          SUMO_TAG_REQUEST },
00094     { "source",           SUMO_TAG_SOURCE },
00095     { "district",         SUMO_TAG_DISTRICT__DEPRECATED },
00096     { "taz",              SUMO_TAG_TAZ },
00097     { "dsource",          SUMO_TAG_DSOURCE__DEPRECATED },
00098     { "tazSource",        SUMO_TAG_TAZSOURCE },
00099     { "dsink",            SUMO_TAG_DSINK__DEPRECATED },
00100     { "tazSink",          SUMO_TAG_TAZSINK },
00101     { "tl-logic",         SUMO_TAG_TLLOGIC__DEPRECATED },
00102     { "tlLogic",          SUMO_TAG_TLLOGIC },
00103     { "phase",            SUMO_TAG_PHASE },
00104     { "tripdef",          SUMO_TAG_TRIP__DEPRECATED },
00105     { "trip",             SUMO_TAG_TRIP },
00106     { "flow",             SUMO_TAG_FLOW },
00107     { "step",             SUMO_TAG_STEP },
00108     { "interval",         SUMO_TAG_INTERVAL },
00109     { "timed_event",      SUMO_TAG_TIMEDEVENT__DEPRECATED },
00110     { "timedEvent",       SUMO_TAG_TIMEDEVENT },
00111     { "fromedge",         SUMO_TAG_FROMEDGE__DEPRECATED },
00112     { "fromEdge",         SUMO_TAG_FROMEDGE },
00113     { "toedge",           SUMO_TAG_TOEDGE__DEPRECATED },
00114     { "toEdge",           SUMO_TAG_TOEDGE },
00115     { "sink",             SUMO_TAG_SINK },
00116     { "param",            SUMO_TAG_PARAM },
00117     { "WAUT",             SUMO_TAG_WAUT },
00118     { "wautSwitch",       SUMO_TAG_WAUT_SWITCH },
00119     { "wautJunction",     SUMO_TAG_WAUT_JUNCTION },
00120     { "reset",            SUMO_TAG_RESET },
00121     { "delete",           SUMO_TAG_DELETE },
00122     { "stop",             SUMO_TAG_STOP },
00123     { "dest_prob_reroute", SUMO_TAG_DEST_PROB_REROUTE__DEPRECATED },
00124     { "destProbReroute",  SUMO_TAG_DEST_PROB_REROUTE },
00125     { "closing_reroute",  SUMO_TAG_CLOSING_REROUTE__DEPRECATED },
00126     { "closingReroute",   SUMO_TAG_CLOSING_REROUTE },
00127     { "route_prob_reroute", SUMO_TAG_ROUTE_PROB_REROUTE__DEPRECATED },
00128     { "routeProbReroute", SUMO_TAG_ROUTE_PROB_REROUTE },
00129     { "polytype",         SUMO_TAG_POLYTYPE__DEPRECATED },
00130     { "polygonType",      SUMO_TAG_POLYTYPE },
00131     { "connection",       SUMO_TAG_CONNECTION },
00132     { "prohibition",      SUMO_TAG_PROHIBITION },
00133     { "split",            SUMO_TAG_SPLIT },
00134     { "node",             SUMO_TAG_NODE },
00135     { "type",             SUMO_TAG_TYPE },
00136     { "detector_definition", SUMO_TAG_DETECTOR_DEFINITION__DEPRECATED },
00137     { "detectorDefinition",  SUMO_TAG_DETECTOR_DEFINITION },
00138     { "routeDistribution",   SUMO_TAG_ROUTE_DISTRIBUTION },
00139     { "vtypeDistribution",   SUMO_TAG_VTYPE_DISTRIBUTION__DEPRECATED },
00140     { "vTypeDistribution",   SUMO_TAG_VTYPE_DISTRIBUTION },
00141     { "vaporizer",        SUMO_TAG_VAPORIZER },
00142     { "roundabout",       SUMO_TAG_ROUNDABOUT },
00143     { "join",             SUMO_TAG_JOIN },
00144     { "joinExclude",      SUMO_TAG_JOINEXCLUDE },
00145 
00146     { "way",              SUMO_TAG_WAY },
00147     { "nd",               SUMO_TAG_ND },
00148     { "tag",              SUMO_TAG_TAG },
00149 
00150     { "decal",            SUMO_TAG_VIEWSETTINGS_DECAL },
00151     { "scheme",           SUMO_TAG_VIEWSETTINGS_SCHEME },
00152     { "opengl",           SUMO_TAG_VIEWSETTINGS_OPENGL },
00153     { "background",       SUMO_TAG_VIEWSETTINGS_BACKGROUND },
00154     { "edges",            SUMO_TAG_VIEWSETTINGS_EDGES },
00155     { "nlcC",             SUMO_TAG_VIEWSETTINGS_EDGE_COLOR_ITEM },
00156     { "vehicles",         SUMO_TAG_VIEWSETTINGS_VEHICLES },
00157     { "nvcC",             SUMO_TAG_VIEWSETTINGS_VEHICLE_COLOR_ITEM },
00158     { "junctions",        SUMO_TAG_VIEWSETTINGS_JUNCTIONS },
00159     { "additionals",      SUMO_TAG_VIEWSETTINGS_ADDITIONALS },
00160     { "pois",             SUMO_TAG_VIEWSETTINGS_POIS },
00161     { "legend",           SUMO_TAG_VIEWSETTINGS_LEGEND },
00162     { "include",          SUMO_TAG_INCLUDE },
00163     { "xi:include",       SUMO_TAG_INCLUDE },
00164     { "delay",            SUMO_TAG_DELAY },
00165     { "viewport",         SUMO_TAG_VIEWPORT },
00166     { "snapshot",         SUMO_TAG_SNAPSHOT },
00167     { "location",         SUMO_TAG_LOCATION },
00168     { "colorScheme",      SUMO_TAG_COLORSCHEME },
00169     { "entry",            SUMO_TAG_ENTRY },
00170 
00171     { "carFollowing-IDM",         SUMO_TAG_CF_IDM },
00172     { "carFollowing-IDMM",        SUMO_TAG_CF_IDMM },
00173     { "carFollowing-Krauss",      SUMO_TAG_CF_KRAUSS },
00174     { "carFollowing-KraussOrig1", SUMO_TAG_CF_KRAUSS_ORIG1 },
00175     { "carFollowing-PWagner2009", SUMO_TAG_CF_PWAGNER2009 },
00176     { "carFollowing-BKerner",     SUMO_TAG_CF_BKERNER },
00177     { "carFollowing-Wiedemann",   SUMO_TAG_CF_WIEDEMANN },
00178 
00179     { "person",           SUMO_TAG_PERSON },
00180     { "ride",             SUMO_TAG_RIDE },
00181     { "walk",             SUMO_TAG_WALK },
00182 
00183     // ActivityGen statistics file
00184     { "general",          AGEN_TAG_GENERAL },
00185     { "street",           AGEN_TAG_STREET },
00186     { "workHours",        AGEN_TAG_WORKHOURS },
00187     { "opening",          AGEN_TAG_OPENING },
00188     { "closing",          AGEN_TAG_CLOSING },
00189     { "schools",          AGEN_TAG_SCHOOLS },
00190     { "school",           AGEN_TAG_SCHOOL },
00191     { "busStation",       AGEN_TAG_BUSSTATION },
00192     { "busLine",          AGEN_TAG_BUSLINE },
00193     { "stations",         AGEN_TAG_STATIONS },
00194     { "revStations",      AGEN_TAG_REV_STATIONS },
00195     { "station",          AGEN_TAG_STATION },
00196     { "frequency",        AGEN_TAG_FREQUENCY },
00197     { "population",       AGEN_TAG_POPULATION },
00198     { "bracket",          AGEN_TAG_BRACKET },
00199     { "cityGates",        AGEN_TAG_CITYGATES },
00200     { "entrance",         AGEN_TAG_ENTRANCE },
00201     { "parameters",       AGEN_TAG_PARAM },
00202 
00203     { "",                 SUMO_TAG_NOTHING }
00204 };
00205 
00206 
00207 StringBijection<int>::Entry SUMOXMLDefinitions::attrs[] = {
00208     { "id",             SUMO_ATTR_ID },
00209     { "refid",          SUMO_ATTR_REFID__DEPRECATED },
00210     { "refId",          SUMO_ATTR_REFID },
00211     { "name",           SUMO_ATTR_NAME },
00212     { "type",           SUMO_ATTR_TYPE },
00213     { "priority",       SUMO_ATTR_PRIORITY },
00214     { "nolanes",        SUMO_ATTR_NOLANES__DEPRECATED },
00215     { "numLanes",       SUMO_ATTR_NUMLANES },
00216     { "speed",          SUMO_ATTR_SPEED },
00217     { "oneway",         SUMO_ATTR_ONEWAY },
00218     { "width",          SUMO_ATTR_WIDTH },
00219     { "remove",         SUMO_ATTR_REMOVE },
00220 
00221     { "length",         SUMO_ATTR_LENGTH },
00222     { "fromnode",       SUMO_ATTR_FROMNODE },
00223     { "tonode",         SUMO_ATTR_TONODE },
00224     { "xfrom",          SUMO_ATTR_XFROM },
00225     { "yfrom",          SUMO_ATTR_YFROM },
00226     { "xto",            SUMO_ATTR_XTO },
00227     { "yto",            SUMO_ATTR_YTO },
00228 
00229     { "x",              SUMO_ATTR_X },
00230     { "y",              SUMO_ATTR_Y },
00231     { "z",              SUMO_ATTR_Z },
00232 
00233     { "key",            SUMO_ATTR_KEY },
00234     { "requestSize",    SUMO_ATTR_REQUESTSIZE },
00235     { "request",        SUMO_ATTR_REQUEST },
00236     { "response",       SUMO_ATTR_RESPONSE },
00237     { "programID",      SUMO_ATTR_PROGRAMID },
00238     { "offset",         SUMO_ATTR_OFFSET },
00239     { "endOffset",      SUMO_ATTR_ENDOFFSET },
00240     { "incLanes",       SUMO_ATTR_INCLANES },
00241     { "intLanes",       SUMO_ATTR_INTLANES },
00242 
00243     { "weight",         SUMO_ATTR_WEIGHT },
00244     { "edge",           SUMO_ATTR_EDGE },
00245     { "edges",          SUMO_ATTR_EDGES },
00246 
00247     { "depart",         SUMO_ATTR_DEPART },
00248     { "departlane",     SUMO_ATTR_DEPARTLANE__DEPRECATED },
00249     { "departLane",     SUMO_ATTR_DEPARTLANE },
00250     { "departpos",      SUMO_ATTR_DEPARTPOS__DEPRECATED },
00251     { "departPos",      SUMO_ATTR_DEPARTPOS },
00252     { "departspeed",    SUMO_ATTR_DEPARTSPEED__DEPRECATED },
00253     { "departSpeed",    SUMO_ATTR_DEPARTSPEED },
00254     { "arrivallane",    SUMO_ATTR_ARRIVALLANE__DEPRECATED },
00255     { "arrivalLane",    SUMO_ATTR_ARRIVALLANE },
00256     { "arrivalpos",     SUMO_ATTR_ARRIVALPOS__DEPRECATED },
00257     { "arrivalPos",     SUMO_ATTR_ARRIVALPOS },
00258     { "arrivalspeed",   SUMO_ATTR_ARRIVALSPEED__DEPRECATED },
00259     { "arrivalSpeed",   SUMO_ATTR_ARRIVALSPEED },
00260     { "route",          SUMO_ATTR_ROUTE },
00261     { "maxspeed",       SUMO_ATTR_MAXSPEED__DEPRECATED },
00262     { "maxSpeed",       SUMO_ATTR_MAXSPEED },
00263     { "accel",          SUMO_ATTR_ACCEL },
00264     { "decel",          SUMO_ATTR_DECEL },
00265     { "vclass",         SUMO_ATTR_VCLASS__DEPRECATED },
00266     { "vClass",         SUMO_ATTR_VCLASS },
00267     { "repno",          SUMO_ATTR_REPNUMBER },
00268     { "speedFactor",    SUMO_ATTR_SPEEDFACTOR },
00269     { "speedDev",       SUMO_ATTR_SPEEDDEV },
00270     { "laneChangeModel", SUMO_ATTR_LANE_CHANGE_MODEL },
00271     { "minGap",         SUMO_ATTR_MINGAP },
00272 
00273     { "sigma",          SUMO_ATTR_SIGMA },
00274     { "tau",            SUMO_ATTR_TAU },
00275 
00276     { "last",           SUMO_ATTR_LAST },
00277     { "cost",           SUMO_ATTR_COST },
00278     { "probability",    SUMO_ATTR_PROB },
00279     { "routes",         SUMO_ATTR_ROUTES },
00280     { "vtypes",         SUMO_ATTR_VTYPES__DEPRECATED },
00281     { "vTypes",         SUMO_ATTR_VTYPES },
00282 
00283     { "lane",           SUMO_ATTR_LANE },
00284     { "lanes",          SUMO_ATTR_LANES },
00285     { "from",           SUMO_ATTR_FROM },
00286     { "to",             SUMO_ATTR_TO },
00287     { "period",         SUMO_ATTR_PERIOD },
00288     { "fromtaz",        SUMO_ATTR_FROM_TAZ__DEPRECATED },
00289     { "fromTaz",        SUMO_ATTR_FROM_TAZ },
00290     { "totaz",          SUMO_ATTR_TO_TAZ__DEPRECATED },
00291     { "toTaz",          SUMO_ATTR_TO_TAZ },
00292     { "reroute",        SUMO_ATTR_REROUTE },
00293 
00294     { "function",       SUMO_ATTR_FUNCTION },
00295     { "pos",            SUMO_ATTR_POSITION },
00296     { "freq",           SUMO_ATTR_FREQUENCY },
00297     { "style",          SUMO_ATTR_STYLE },
00298     { "file",           SUMO_ATTR_FILE },
00299     { "junction",       SUMO_ATTR_JUNCTION },
00300     { "no",             SUMO_ATTR_NO__DEPRECATED },
00301     { "number",         SUMO_ATTR_NUMBER },
00302     { "duration",       SUMO_ATTR_DURATION },
00303     { "until",          SUMO_ATTR_UNTIL },
00304 
00305     { "time",           SUMO_ATTR_TIME },
00306     { "begin",          SUMO_ATTR_BEGIN },
00307     { "end",            SUMO_ATTR_END },
00308     { "tl",             SUMO_ATTR_TLID },
00309     { "linkno",         SUMO_ATTR_TLLINKNO__DEPRECATED },
00310     { "linkIndex",      SUMO_ATTR_TLLINKINDEX },
00311     { "shape",          SUMO_ATTR_SHAPE },
00312     { "spread_type",    SUMO_ATTR_SPREADFUNC__DEPRECATED },
00313     { "spreadType",     SUMO_ATTR_SPREADTYPE },
00314     { "color",          SUMO_ATTR_COLOR },
00315     { "dir",            SUMO_ATTR_DIR },
00316     { "state",          SUMO_ATTR_STATE },
00317     { "layer",          SUMO_ATTR_LAYER },
00318     { "fill",           SUMO_ATTR_FILL },
00319     { "prefix",         SUMO_ATTR_PREFIX },
00320     { "discard",        SUMO_ATTR_DISCARD },
00321 
00322     { "fromLane",       SUMO_ATTR_FROM_LANE },
00323     { "toLane",         SUMO_ATTR_TO_LANE },
00324     { "dest",           SUMO_ATTR_DEST },
00325     { "source",         SUMO_ATTR_SOURCE },
00326     { "via",            SUMO_ATTR_VIA },
00327     { "nodes",          SUMO_ATTR_NODES },
00328 
00329 #ifdef _MESSAGES
00330     { "msg",            SUMO_ATTR_MSG },
00331     { "emit_msg",       SUMO_ATTR_EVENTS },
00332     { "reverse",        SUMO_ATTR_REVERSE },
00333     { "table",          SUMO_ATTR_TABLE },
00334     { "xy",             SUMO_ATTR_XY },
00335     { "step",           SUMO_ATTR_STEP },
00336 #endif
00337     { "min_dur",        SUMO_ATTR_MINDURATION__DEPRECATED },
00338     { "minDur",         SUMO_ATTR_MINDURATION },
00339     { "max_dur",        SUMO_ATTR_MAXDURATION__DEPRECATED },
00340     { "maxDur",         SUMO_ATTR_MAXDURATION },
00341     { "foes",           SUMO_ATTR_FOES },
00342 
00343     { "cont",           SUMO_ATTR_CONT },
00344     { "time_treshold",  SUMO_ATTR_HALTING_TIME_THRESHOLD__DEPRECATED },
00345     { "timeThreshold",  SUMO_ATTR_HALTING_TIME_THRESHOLD },
00346     { "speed_treshold", SUMO_ATTR_HALTING_SPEED_THRESHOLD__DEPRECATED },
00347     { "speedThreshold", SUMO_ATTR_HALTING_SPEED_THRESHOLD },
00348     { "jam_treshold",   SUMO_ATTR_JAM_DIST_THRESHOLD__DEPRECATED },
00349     { "jamThreshold",   SUMO_ATTR_JAM_DIST_THRESHOLD },
00350 
00351     { "wautID",         SUMO_ATTR_WAUT_ID },
00352     { "junctionID",     SUMO_ATTR_JUNCTION_ID },
00353     { "procedure",      SUMO_ATTR_PROCEDURE },
00354     { "synchron",       SUMO_ATTR_SYNCHRON },
00355     { "refTime",        SUMO_ATTR_REF_TIME },
00356     { "startProg",      SUMO_ATTR_START_PROG },
00357     { "off",            SUMO_ATTR_OFF },
00358     { "friendly_pos",   SUMO_ATTR_FRIENDLY_POS__DEPRECATED },
00359     { "friendlyPos",    SUMO_ATTR_FRIENDLY_POS },
00360     { "splitByType",    SUMO_ATTR_SPLIT_VTYPE },
00361     { "uncontrolled",   SUMO_ATTR_UNCONTROLLED },
00362     { "pass",           SUMO_ATTR_PASS },
00363     { "bus_stop",       SUMO_ATTR_BUS_STOP__DEPRECATED },
00364     { "busStop",        SUMO_ATTR_BUS_STOP },
00365     { "line",           SUMO_ATTR_LINE },
00366     { "lines",          SUMO_ATTR_LINES },
00367     { "value",          SUMO_ATTR_VALUE },
00368     { "prohibitor",     SUMO_ATTR_PROHIBITOR },
00369     { "prohibited",     SUMO_ATTR_PROHIBITED },
00370     { "allow",          SUMO_ATTR_ALLOW },
00371     { "disallow",       SUMO_ATTR_DISALLOW },
00372     { "prefer",         SUMO_ATTR_PREFER },
00373     { "controlled_inner", SUMO_ATTR_CONTROLLED_INNER__DEPRECATED },
00374     { "controlledInner", SUMO_ATTR_CONTROLLED_INNER },
00375     { "vehsPerHour",    SUMO_ATTR_VEHSPERHOUR },
00376     { "output",         SUMO_ATTR_OUTPUT },
00377     { "height",         SUMO_ATTR_HEIGHT },
00378     { "guiOffset",      SUMO_ATTR_GUIOFFSET },
00379     { "guiShape",       SUMO_ATTR_GUISHAPE },
00380     { "osgFile",        SUMO_ATTR_OSGFILE },
00381     { "emissionClass",  SUMO_ATTR_EMISSIONCLASS },
00382     { "startPos",       SUMO_ATTR_STARTPOS },
00383     { "endPos",         SUMO_ATTR_ENDPOS },
00384     { "triggered",      SUMO_ATTR_TRIGGERED },
00385     { "parking",        SUMO_ATTR_PARKING },
00386     { "index",          SUMO_ATTR_INDEX },
00387 
00388     { "entering",       SUMO_ATTR_ENTERING },
00389     { "excludeEmpty",   SUMO_ATTR_EXCLUDE_EMPTY },
00390     { "withInternal",   SUMO_ATTR_WITH_INTERNAL },
00391     { "trackVehicles",  SUMO_ATTR_TRACK_VEHICLES },
00392     { "maxTraveltime",  SUMO_ATTR_MAX_TRAVELTIME },
00393     { "minSamples",     SUMO_ATTR_MIN_SAMPLES },
00394 
00395     { "lon",            SUMO_ATTR_LON },
00396     { "lat",            SUMO_ATTR_LAT },
00397     { "k",              SUMO_ATTR_K },
00398     { "v",              SUMO_ATTR_V },
00399     { "ref",            SUMO_ATTR_REF },
00400     { "href",           SUMO_ATTR_HREF },
00401     { "zoom",           SUMO_ATTR_ZOOM },
00402     { "interpolated",   SUMO_ATTR_INTERPOLATED },
00403     { "threshold",      SUMO_ATTR_THRESHOLD },
00404 
00405     { "netOffset",      SUMO_ATTR_NET_OFFSET },
00406     { "convBoundary",   SUMO_ATTR_CONV_BOUNDARY },
00407     { "origBoundary",   SUMO_ATTR_ORIG_BOUNDARY },
00408     { "projParameter",  SUMO_ATTR_ORIG_PROJ },
00409 
00410     { "tauLast",        SUMO_ATTR_CF_PWAGNER2009_TAULAST },
00411     { "apProb",         SUMO_ATTR_CF_PWAGNER2009_APPROB },
00412     { "delta",          SUMO_ATTR_CF_IDM_DELTA },
00413     { "stepping",       SUMO_ATTR_CF_IDM_STEPPING },
00414     { "adaptFactor",    SUMO_ATTR_CF_IDMM_ADAPT_FACTOR },
00415     { "adaptTime",      SUMO_ATTR_CF_IDMM_ADAPT_TIME },
00416     { "phi",            SUMO_ATTR_CF_KERNER_PHI },
00417 
00418     { "security",       SUMO_ATTR_CF_WIEDEMANN_SECURITY },
00419     { "estimation",     SUMO_ATTR_CF_WIEDEMANN_ESTIMATION },
00420 
00421     { "generateWalks",  SUMO_ATTR_GENERATE_WALKS },
00422 
00423     // ActivityGen statistics file
00424     { "inhabitants",    AGEN_ATTR_INHABITANTS },
00425     { "households",     AGEN_ATTR_HOUSEHOLDS },
00426     { "childrenAgeLimit", AGEN_ATTR_CHILDREN },
00427     { "retirementAgeLimit", AGEN_ATTR_RETIREMENT },
00428     { "carRate",        AGEN_ATTR_CARS },
00429     { "unemploymentRate", AGEN_ATTR_UNEMPLOYEMENT },
00430     { "footDistanceLimit", AGEN_ATTR_MAX_FOOT_DIST },
00431     { "incomingTraffic", AGEN_ATTR_IN_TRAFFIC },
00432     { "incoming", AGEN_ATTR_INCOMING },
00433     { "outgoingTraffic", AGEN_ATTR_OUT_TRAFFIC },
00434     { "outgoing", AGEN_ATTR_OUTGOING },
00435     { "population",     AGEN_ATTR_POPULATION },
00436     { "workPosition",   AGEN_ATTR_OUT_WORKPOSITION },
00437     { "hour",           AGEN_ATTR_HOUR },
00438     { "proportion",     AGEN_ATTR_PROP },
00439     { "capacity",       AGEN_ATTR_CAPACITY },
00440     { "opening",        AGEN_ATTR_OPENING },
00441     { "closing",        AGEN_ATTR_CLOSING },
00442     { "maxTripDuration", AGEN_ATTR_MAX_TRIP_DURATION },
00443     { "rate",           AGEN_ATTR_RATE },
00444     { "beginAge",       AGEN_ATTR_BEGINAGE },
00445     { "endAge",         AGEN_ATTR_ENDAGE },
00446     { "peopleNbr",      AGEN_ATTR_PEOPLENBR },
00447     { "carPreference",  AGEN_ATTR_CARPREF },
00448     { "meanTimePerKmInCity", AGEN_ATTR_CITYSPEED },
00449     { "freeTimeActivityRate", AGEN_ATTR_FREETIMERATE },
00450     { "uniformRandomTraffic", AGEN_ATTR_UNI_RAND_TRAFFIC},
00451     { "departureVariation", AGEN_ATTR_DEP_VARIATION},
00452 
00453     { "modificationStatusNotForPrinting", GNE_ATTR_MODIFICATION_STATUS},
00454     { "shapeStartNotForPrinting", GNE_ATTR_SHAPE_START},
00455     { "shapeEndNotForPrinting", GNE_ATTR_SHAPE_END},
00456 
00457     { "",               SUMO_ATTR_NOTHING }
00458 };
00459 
00460 
00461 StringBijection<SumoXMLNodeType>::Entry SUMOXMLDefinitions::sumoNodeTypeValues[] = {
00462     {"traffic_light",       NODETYPE_TRAFFIC_LIGHT},
00463     {"priority",            NODETYPE_PRIORITY_JUNCTION},
00464     {"right_before_left",   NODETYPE_RIGHT_BEFORE_LEFT},
00465     {"district",            NODETYPE_DISTRICT},
00466     {"unregulated",         NODETYPE_NOJUNCTION},
00467     {"internal",            NODETYPE_INTERNAL},
00468     {"dead_end",            NODETYPE_DEAD_END},
00469     {"DEAD_END",            NODETYPE_DEAD_END_DEPRECATED},
00470 
00471     {"unknown",             NODETYPE_UNKNOWN}
00472 };
00473 
00474 
00475 StringBijection<SumoXMLEdgeFunc>::Entry SUMOXMLDefinitions::sumoEdgeFuncValues[] = {
00476     {"normal",       EDGEFUNC_NORMAL},
00477     {"connector",    EDGEFUNC_CONNECTOR},
00478     {"sink",         EDGEFUNC_SINK},
00479     {"source",       EDGEFUNC_SOURCE},
00480 
00481     {"internal",     EDGEFUNC_INTERNAL}
00482 };
00483 
00484 
00485 StringBijection<LaneSpreadFunction>::Entry SUMOXMLDefinitions::laneSpreadFunctionValues[] = {
00486     {"right",             LANESPREAD_RIGHT}, // default
00487     {"center",            LANESPREAD_CENTER}
00488 };
00489 
00490 
00491 StringBijection<LinkState>::Entry SUMOXMLDefinitions::linkStateValues[] = {
00492     { "G", LINKSTATE_TL_GREEN_MAJOR },
00493     { "g", LINKSTATE_TL_GREEN_MINOR },
00494     { "r", LINKSTATE_TL_RED },
00495     { "Y", LINKSTATE_TL_YELLOW_MAJOR },
00496     { "y", LINKSTATE_TL_YELLOW_MINOR },
00497     { "o", LINKSTATE_TL_OFF_BLINKING },
00498     { "O", LINKSTATE_TL_OFF_NOSIGNAL },
00499     { "M", LINKSTATE_MAJOR },
00500     { "m", LINKSTATE_MINOR },
00501     { "=", LINKSTATE_EQUAL },
00502     { "-", LINKSTATE_DEADEND }
00503 };
00504 
00505 
00506 StringBijection<LinkDirection>::Entry SUMOXMLDefinitions::linkDirectionValues[] = {
00507     { "s", LINKDIR_STRAIGHT },
00508     { "t", LINKDIR_TURN },
00509     { "l", LINKDIR_LEFT },
00510     { "r", LINKDIR_RIGHT },
00511     { "L", LINKDIR_PARTLEFT },
00512     { "R", LINKDIR_PARTRIGHT },
00513     { "invalid", LINKDIR_NODIR }
00514 };
00515 
00516 
00517 StringBijection<TrafficLightType>::Entry SUMOXMLDefinitions::trafficLightTypesVales[] = {
00518     { "static", TLTYPE_STATIC },
00519     { "actuated", TLTYPE_ACTUATED },
00520     { "agentbased", TLTYPE_AGENT }
00521 };
00522 
00523 StringBijection<int> SUMOXMLDefinitions::Tags(
00524     SUMOXMLDefinitions::tags, SUMO_TAG_NOTHING);
00525 
00526 StringBijection<int> SUMOXMLDefinitions::Attrs(
00527     SUMOXMLDefinitions::attrs, SUMO_ATTR_NOTHING);
00528 
00529 StringBijection<SumoXMLNodeType> SUMOXMLDefinitions::NodeTypes(
00530     SUMOXMLDefinitions::sumoNodeTypeValues, NODETYPE_UNKNOWN);
00531 
00532 StringBijection<SumoXMLEdgeFunc> SUMOXMLDefinitions::EdgeFunctions(
00533     SUMOXMLDefinitions::sumoEdgeFuncValues, EDGEFUNC_INTERNAL);
00534 
00535 StringBijection<LaneSpreadFunction> SUMOXMLDefinitions::LaneSpreadFunctions(
00536     SUMOXMLDefinitions::laneSpreadFunctionValues, LANESPREAD_CENTER);
00537 
00538 StringBijection<LinkState> SUMOXMLDefinitions::LinkStates(
00539     SUMOXMLDefinitions::linkStateValues, LINKSTATE_DEADEND);
00540 
00541 StringBijection<LinkDirection> SUMOXMLDefinitions::LinkDirections(
00542     SUMOXMLDefinitions::linkDirectionValues, LINKDIR_NODIR);
00543 
00544 StringBijection<TrafficLightType> SUMOXMLDefinitions::TrafficLightTypes(
00545     SUMOXMLDefinitions::trafficLightTypesVales, TLTYPE_AGENT);
00546 
00547 /****************************************************************************/
00548 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines