/****************************************************************************/1// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo2// Copyright (C) 2007-2025 German Aerospace Center (DLR) and others.3// This program and the accompanying materials are made available under the4// terms of the Eclipse Public License 2.0 which is available at5// https://www.eclipse.org/legal/epl-2.0/6// This Source Code may also be made available under the following Secondary7// Licenses when the conditions for such availability set forth in the Eclipse8// Public License 2.0 are satisfied: GNU General Public License, version 29// or later which is available at10// https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html11// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later12/****************************************************************************/13/// @file TraCIConstants.h14/// @author Axel Wegener15/// @author Friedemann Wesner16/// @author Bjoern Hendriks17/// @author Daniel Krajzewicz18/// @author Thimor Bohn19/// @author Tino Morenz20/// @author Michael Behrisch21/// @author Christoph Sommer22/// @author Mario Krumnow23/// @author Jakob Erdmann24/// @author Laura Bieker25/// @author Mirko Barthauer26/// @date 2007/10/2427///28// holds codes used for TraCI29/****************************************************************************/30#pragma once3132#if __cplusplus >= 201103L33#define TRACI_CONST constexpr34#else35#define TRACI_CONST const36#endif3738namespace libsumo {3940// ****************************************41// VERSION42// ****************************************43TRACI_CONST int TRACI_VERSION = 22;4445// ****************************************46// COMMANDS47// ****************************************48// command: get version49TRACI_CONST int CMD_GETVERSION = 0x00;5051// command: load52TRACI_CONST int CMD_LOAD = 0x01;5354// command: execute move (half step)55TRACI_CONST int CMD_EXECUTEMOVE = 0x7d;5657// command: simulation step58TRACI_CONST int CMD_SIMSTEP = 0x02;5960// command: set connection priority (execution order)61TRACI_CONST int CMD_SETORDER = 0x03;6263// command: stop vehicle64TRACI_CONST int CMD_STOP = 0x12;6566// command: reroute to parking area67TRACI_CONST int CMD_REROUTE_TO_PARKING = 0xc2;6869// command: Resume from parking70TRACI_CONST int CMD_RESUME = 0x19;7172// command: set lane73TRACI_CONST int CMD_CHANGELANE = 0x13;7475// command: slow down76TRACI_CONST int CMD_SLOWDOWN = 0x14;7778// command: set sublane (vehicle)79TRACI_CONST int CMD_CHANGESUBLANE = 0x15;8081// command: open gap82TRACI_CONST int CMD_OPENGAP = 0x16;8384// command: replace vehicle stop and update route85TRACI_CONST int CMD_REPLACE_STOP = 0x17;8687// command: insert vehicle stop and update route88TRACI_CONST int CMD_INSERT_STOP = 0x18;8990// command: retrieve information about the current taxi fleet and their status91TRACI_CONST int VAR_TAXI_FLEET = 0x20;9293// command: send dispatch request for the given taxi94TRACI_CONST int CMD_TAXI_DISPATCH = 0x21;9596// command: change target97TRACI_CONST int CMD_CHANGETARGET = 0x31;9899// command: close sumo100TRACI_CONST int CMD_CLOSE = 0x7F;101102// command: add subscription filter103TRACI_CONST int CMD_ADD_SUBSCRIPTION_FILTER = 0x7e;104105106// command: subscribe induction loop (e1) context107TRACI_CONST int CMD_SUBSCRIBE_INDUCTIONLOOP_CONTEXT = 0x80;108// response: subscribe induction loop (e1) context109TRACI_CONST int RESPONSE_SUBSCRIBE_INDUCTIONLOOP_CONTEXT = 0x90;110// command: get induction loop (e1) variable111TRACI_CONST int CMD_GET_INDUCTIONLOOP_VARIABLE = 0xa0;112// response: get induction loop (e1) variable113TRACI_CONST int RESPONSE_GET_INDUCTIONLOOP_VARIABLE = 0xb0;114// command: set induction loop (e1) variable, not used yet115TRACI_CONST int CMD_SET_INDUCTIONLOOP_VARIABLE = 0xc0;116// command: subscribe induction loop (e1) variable117TRACI_CONST int CMD_SUBSCRIBE_INDUCTIONLOOP_VARIABLE = 0xd0;118// response: subscribe induction loop (e1) variable119TRACI_CONST int RESPONSE_SUBSCRIBE_INDUCTIONLOOP_VARIABLE = 0xe0;120121// command: subscribe multi-entry/multi-exit detector (e3) context122TRACI_CONST int CMD_SUBSCRIBE_MULTIENTRYEXIT_CONTEXT = 0x81;123// response: subscribe multi-entry/multi-exit detector (e3) context124TRACI_CONST int RESPONSE_SUBSCRIBE_MULTIENTRYEXIT_CONTEXT = 0x91;125// command: get multi-entry/multi-exit detector (e3) variable126TRACI_CONST int CMD_GET_MULTIENTRYEXIT_VARIABLE = 0xa1;127// response: get multi-entry/multi-exit detector (e3) variable128TRACI_CONST int RESPONSE_GET_MULTIENTRYEXIT_VARIABLE = 0xb1;129// command: set multi-entry/multi-exit detector (e3) variable, not used yet130TRACI_CONST int CMD_SET_MULTIENTRYEXIT_VARIABLE = 0xc1;131// command: subscribe multi-entry/multi-exit detector (e3) variable132TRACI_CONST int CMD_SUBSCRIBE_MULTIENTRYEXIT_VARIABLE = 0xd1;133// response: subscribe multi-entry/multi-exit detector (e3) variable134TRACI_CONST int RESPONSE_SUBSCRIBE_MULTIENTRYEXIT_VARIABLE = 0xe1;135136// command: subscribe traffic lights context137TRACI_CONST int CMD_SUBSCRIBE_TL_CONTEXT = 0x82;138// response: subscribe traffic lights context139TRACI_CONST int RESPONSE_SUBSCRIBE_TL_CONTEXT = 0x92;140// command: get traffic lights variable141TRACI_CONST int CMD_GET_TL_VARIABLE = 0xa2;142// response: get traffic lights variable143TRACI_CONST int RESPONSE_GET_TL_VARIABLE = 0xb2;144// command: set traffic lights variable145TRACI_CONST int CMD_SET_TL_VARIABLE = 0xc2;146// command: subscribe traffic lights variable147TRACI_CONST int CMD_SUBSCRIBE_TL_VARIABLE = 0xd2;148// response: subscribe traffic lights variable149TRACI_CONST int RESPONSE_SUBSCRIBE_TL_VARIABLE = 0xe2;150151// command: subscribe lane context152TRACI_CONST int CMD_SUBSCRIBE_LANE_CONTEXT = 0x83;153// response: subscribe lane context154TRACI_CONST int RESPONSE_SUBSCRIBE_LANE_CONTEXT = 0x93;155// command: get lane variable156TRACI_CONST int CMD_GET_LANE_VARIABLE = 0xa3;157// response: get lane variable158TRACI_CONST int RESPONSE_GET_LANE_VARIABLE = 0xb3;159// command: set lane variable160TRACI_CONST int CMD_SET_LANE_VARIABLE = 0xc3;161// command: subscribe lane variable162TRACI_CONST int CMD_SUBSCRIBE_LANE_VARIABLE = 0xd3;163// response: subscribe lane variable164TRACI_CONST int RESPONSE_SUBSCRIBE_LANE_VARIABLE = 0xe3;165166// command: subscribe vehicle context167TRACI_CONST int CMD_SUBSCRIBE_VEHICLE_CONTEXT = 0x84;168// response: subscribe vehicle context169TRACI_CONST int RESPONSE_SUBSCRIBE_VEHICLE_CONTEXT = 0x94;170// command: get vehicle variable171TRACI_CONST int CMD_GET_VEHICLE_VARIABLE = 0xa4;172// response: get vehicle variable173TRACI_CONST int RESPONSE_GET_VEHICLE_VARIABLE = 0xb4;174// command: set vehicle variable175TRACI_CONST int CMD_SET_VEHICLE_VARIABLE = 0xc4;176// command: subscribe vehicle variable177TRACI_CONST int CMD_SUBSCRIBE_VEHICLE_VARIABLE = 0xd4;178// response: subscribe vehicle variable179TRACI_CONST int RESPONSE_SUBSCRIBE_VEHICLE_VARIABLE = 0xe4;180181// command: subscribe vehicle type context182TRACI_CONST int CMD_SUBSCRIBE_VEHICLETYPE_CONTEXT = 0x85;183// response: subscribe vehicle type context184TRACI_CONST int RESPONSE_SUBSCRIBE_VEHICLETYPE_CONTEXT = 0x95;185// command: get vehicle type variable186TRACI_CONST int CMD_GET_VEHICLETYPE_VARIABLE = 0xa5;187// response: get vehicle type variable188TRACI_CONST int RESPONSE_GET_VEHICLETYPE_VARIABLE = 0xb5;189// command: set vehicle type variable190TRACI_CONST int CMD_SET_VEHICLETYPE_VARIABLE = 0xc5;191// command: subscribe vehicle type variable192TRACI_CONST int CMD_SUBSCRIBE_VEHICLETYPE_VARIABLE = 0xd5;193// response: subscribe vehicle type variable194TRACI_CONST int RESPONSE_SUBSCRIBE_VEHICLETYPE_VARIABLE = 0xe5;195196// command: subscribe route context197TRACI_CONST int CMD_SUBSCRIBE_ROUTE_CONTEXT = 0x86;198// response: subscribe route context199TRACI_CONST int RESPONSE_SUBSCRIBE_ROUTE_CONTEXT = 0x96;200// command: get route variable201TRACI_CONST int CMD_GET_ROUTE_VARIABLE = 0xa6;202// response: get route variable203TRACI_CONST int RESPONSE_GET_ROUTE_VARIABLE = 0xb6;204// command: set route variable205TRACI_CONST int CMD_SET_ROUTE_VARIABLE = 0xc6;206// command: subscribe route variable207TRACI_CONST int CMD_SUBSCRIBE_ROUTE_VARIABLE = 0xd6;208// response: subscribe route variable209TRACI_CONST int RESPONSE_SUBSCRIBE_ROUTE_VARIABLE = 0xe6;210211// command: subscribe poi context212TRACI_CONST int CMD_SUBSCRIBE_POI_CONTEXT = 0x87;213// response: subscribe poi context214TRACI_CONST int RESPONSE_SUBSCRIBE_POI_CONTEXT = 0x97;215// command: get poi variable216TRACI_CONST int CMD_GET_POI_VARIABLE = 0xa7;217// response: get poi variable218TRACI_CONST int RESPONSE_GET_POI_VARIABLE = 0xb7;219// command: set poi variable220TRACI_CONST int CMD_SET_POI_VARIABLE = 0xc7;221// command: subscribe poi variable222TRACI_CONST int CMD_SUBSCRIBE_POI_VARIABLE = 0xd7;223// response: subscribe poi variable224TRACI_CONST int RESPONSE_SUBSCRIBE_POI_VARIABLE = 0xe7;225226// command: subscribe polygon context227TRACI_CONST int CMD_SUBSCRIBE_POLYGON_CONTEXT = 0x88;228// response: subscribe polygon context229TRACI_CONST int RESPONSE_SUBSCRIBE_POLYGON_CONTEXT = 0x98;230// command: get polygon variable231TRACI_CONST int CMD_GET_POLYGON_VARIABLE = 0xa8;232// response: get polygon variable233TRACI_CONST int RESPONSE_GET_POLYGON_VARIABLE = 0xb8;234// command: set polygon variable235TRACI_CONST int CMD_SET_POLYGON_VARIABLE = 0xc8;236// command: subscribe polygon variable237TRACI_CONST int CMD_SUBSCRIBE_POLYGON_VARIABLE = 0xd8;238// response: subscribe polygon variable239TRACI_CONST int RESPONSE_SUBSCRIBE_POLYGON_VARIABLE = 0xe8;240241// command: subscribe junction context242TRACI_CONST int CMD_SUBSCRIBE_JUNCTION_CONTEXT = 0x89;243// response: subscribe junction context244TRACI_CONST int RESPONSE_SUBSCRIBE_JUNCTION_CONTEXT = 0x99;245// command: get junction variable246TRACI_CONST int CMD_GET_JUNCTION_VARIABLE = 0xa9;247// response: get junction variable248TRACI_CONST int RESPONSE_GET_JUNCTION_VARIABLE = 0xb9;249// command: set junction variable250TRACI_CONST int CMD_SET_JUNCTION_VARIABLE = 0xc9;251// command: subscribe junction variable252TRACI_CONST int CMD_SUBSCRIBE_JUNCTION_VARIABLE = 0xd9;253// response: subscribe junction variable254TRACI_CONST int RESPONSE_SUBSCRIBE_JUNCTION_VARIABLE = 0xe9;255256// command: subscribe edge context257TRACI_CONST int CMD_SUBSCRIBE_EDGE_CONTEXT = 0x8a;258// response: subscribe edge context259TRACI_CONST int RESPONSE_SUBSCRIBE_EDGE_CONTEXT = 0x9a;260// command: get edge variable261TRACI_CONST int CMD_GET_EDGE_VARIABLE = 0xaa;262// response: get edge variable263TRACI_CONST int RESPONSE_GET_EDGE_VARIABLE = 0xba;264// command: set edge variable265TRACI_CONST int CMD_SET_EDGE_VARIABLE = 0xca;266// command: subscribe edge variable267TRACI_CONST int CMD_SUBSCRIBE_EDGE_VARIABLE = 0xda;268// response: subscribe edge variable269TRACI_CONST int RESPONSE_SUBSCRIBE_EDGE_VARIABLE = 0xea;270271// command: subscribe simulation context272TRACI_CONST int CMD_SUBSCRIBE_SIM_CONTEXT = 0x8b;273// response: subscribe simulation context274TRACI_CONST int RESPONSE_SUBSCRIBE_SIM_CONTEXT = 0x9b;275// command: get simulation variable276TRACI_CONST int CMD_GET_SIM_VARIABLE = 0xab;277// response: get simulation variable278TRACI_CONST int RESPONSE_GET_SIM_VARIABLE = 0xbb;279// command: set simulation variable280TRACI_CONST int CMD_SET_SIM_VARIABLE = 0xcb;281// command: subscribe simulation variable282TRACI_CONST int CMD_SUBSCRIBE_SIM_VARIABLE = 0xdb;283// response: subscribe simulation variable284TRACI_CONST int RESPONSE_SUBSCRIBE_SIM_VARIABLE = 0xeb;285286// command: subscribe GUI context287TRACI_CONST int CMD_SUBSCRIBE_GUI_CONTEXT = 0x8c;288// response: subscribe GUI context289TRACI_CONST int RESPONSE_SUBSCRIBE_GUI_CONTEXT = 0x9c;290// command: get GUI variable291TRACI_CONST int CMD_GET_GUI_VARIABLE = 0xac;292// response: get GUI variable293TRACI_CONST int RESPONSE_GET_GUI_VARIABLE = 0xbc;294// command: set GUI variable295TRACI_CONST int CMD_SET_GUI_VARIABLE = 0xcc;296// command: subscribe GUI variable297TRACI_CONST int CMD_SUBSCRIBE_GUI_VARIABLE = 0xdc;298// response: subscribe GUI variable299TRACI_CONST int RESPONSE_SUBSCRIBE_GUI_VARIABLE = 0xec;300301// command: subscribe lane area detector (e2) context302TRACI_CONST int CMD_SUBSCRIBE_LANEAREA_CONTEXT = 0x8d;303// response: subscribe lane area detector (e2) context304TRACI_CONST int RESPONSE_SUBSCRIBE_LANEAREA_CONTEXT = 0x9d;305// command: get lane area detector (e2) variable306TRACI_CONST int CMD_GET_LANEAREA_VARIABLE = 0xad;307// response: get lane area detector (e2) variable308TRACI_CONST int RESPONSE_GET_LANEAREA_VARIABLE = 0xbd;309// command: set lane area detector (e2) variable, not used yet310TRACI_CONST int CMD_SET_LANEAREA_VARIABLE = 0xcd;311// command: subscribe lane area detector (e2) variable312TRACI_CONST int CMD_SUBSCRIBE_LANEAREA_VARIABLE = 0xdd;313// response: subscribe lane area detector (e2) variable314TRACI_CONST int RESPONSE_SUBSCRIBE_LANEAREA_VARIABLE = 0xed;315316// command: subscribe person context317TRACI_CONST int CMD_SUBSCRIBE_PERSON_CONTEXT = 0x8e;318// response: subscribe person context319TRACI_CONST int RESPONSE_SUBSCRIBE_PERSON_CONTEXT = 0x9e;320// command: get person variable321TRACI_CONST int CMD_GET_PERSON_VARIABLE = 0xae;322// response: get person variable323TRACI_CONST int RESPONSE_GET_PERSON_VARIABLE = 0xbe;324// command: set person variable325TRACI_CONST int CMD_SET_PERSON_VARIABLE = 0xce;326// command: subscribe person variable327TRACI_CONST int CMD_SUBSCRIBE_PERSON_VARIABLE = 0xde;328// response: subscribe person variable329TRACI_CONST int RESPONSE_SUBSCRIBE_PERSON_VARIABLE = 0xee;330331// command: subscribe busstop context332TRACI_CONST int CMD_SUBSCRIBE_BUSSTOP_CONTEXT = 0x8f;333// response: subscribe busstop context334TRACI_CONST int RESPONSE_SUBSCRIBE_BUSSTOP_CONTEXT = 0x9f;335// command: get busstop variable336TRACI_CONST int CMD_GET_BUSSTOP_VARIABLE = 0xaf;337// response: get busstop variable338TRACI_CONST int RESPONSE_GET_BUSSTOP_VARIABLE = 0xbf;339// command: set busstop variable, not used yet340TRACI_CONST int CMD_SET_BUSSTOP_VARIABLE = 0xcf;341// command: subscribe busstop variable342TRACI_CONST int CMD_SUBSCRIBE_BUSSTOP_VARIABLE = 0xdf;343// response: subscribe busstop variable344TRACI_CONST int RESPONSE_SUBSCRIBE_BUSSTOP_VARIABLE = 0xef;345346// command: subscribe parkingarea context347TRACI_CONST int CMD_SUBSCRIBE_PARKINGAREA_CONTEXT = 0x04;348// response: subscribe parkingarea context349TRACI_CONST int RESPONSE_SUBSCRIBE_PARKINGAREA_CONTEXT = 0x14;350// command: get parkingarea variable351TRACI_CONST int CMD_GET_PARKINGAREA_VARIABLE = 0x24;352// response: get parkingarea variable353TRACI_CONST int RESPONSE_GET_PARKINGAREA_VARIABLE = 0x34;354// command: set parkingarea variable355TRACI_CONST int CMD_SET_PARKINGAREA_VARIABLE = 0x44;356// command: subscribe parkingarea variable357TRACI_CONST int CMD_SUBSCRIBE_PARKINGAREA_VARIABLE = 0x54;358// response: subscribe parkingarea variable359TRACI_CONST int RESPONSE_SUBSCRIBE_PARKINGAREA_VARIABLE = 0x64;360361// command: subscribe chargingstation context362TRACI_CONST int CMD_SUBSCRIBE_CHARGINGSTATION_CONTEXT = 0x05;363// response: subscribe chargingstation context364TRACI_CONST int RESPONSE_SUBSCRIBE_CHARGINGSTATION_CONTEXT = 0x15;365// command: get chargingstation variable366TRACI_CONST int CMD_GET_CHARGINGSTATION_VARIABLE = 0x25;367// response: get chargingstation variable368TRACI_CONST int RESPONSE_GET_CHARGINGSTATION_VARIABLE = 0x35;369// command: set chargingstation variable370TRACI_CONST int CMD_SET_CHARGINGSTATION_VARIABLE = 0x45;371// command: subscribe chargingstation variable372TRACI_CONST int CMD_SUBSCRIBE_CHARGINGSTATION_VARIABLE = 0x55;373// response: subscribe chargingstation variable374TRACI_CONST int RESPONSE_SUBSCRIBE_CHARGINGSTATION_VARIABLE = 0x65;375376// command: subscribe routeprobe context377TRACI_CONST int CMD_SUBSCRIBE_ROUTEPROBE_CONTEXT = 0x06;378// response: subscribe routeprobe context379TRACI_CONST int RESPONSE_SUBSCRIBE_ROUTEPROBE_CONTEXT = 0x16;380// command: get routeprobe variable381TRACI_CONST int CMD_GET_ROUTEPROBE_VARIABLE = 0x26;382// response: get routeprobe variable383TRACI_CONST int RESPONSE_GET_ROUTEPROBE_VARIABLE = 0x36;384// command: set routeprobe variable385TRACI_CONST int CMD_SET_ROUTEPROBE_VARIABLE = 0x46;386// command: subscribe routeprobe variable387TRACI_CONST int CMD_SUBSCRIBE_ROUTEPROBE_VARIABLE = 0x56;388// response: subscribe routeprobe variable389TRACI_CONST int RESPONSE_SUBSCRIBE_ROUTEPROBE_VARIABLE = 0x66;390391// command: subscribe calibrator context392TRACI_CONST int CMD_SUBSCRIBE_CALIBRATOR_CONTEXT = 0x07;393// response: subscribe calibrator context394TRACI_CONST int RESPONSE_SUBSCRIBE_CALIBRATOR_CONTEXT = 0x17;395// command: get calibrator variable396TRACI_CONST int CMD_GET_CALIBRATOR_VARIABLE = 0x27;397// response: get calibrator variable398TRACI_CONST int RESPONSE_GET_CALIBRATOR_VARIABLE = 0x37;399// command: set calibrator variable400TRACI_CONST int CMD_SET_CALIBRATOR_VARIABLE = 0x47;401// command: subscribe calibrator variable402TRACI_CONST int CMD_SUBSCRIBE_CALIBRATOR_VARIABLE = 0x57;403// response: subscribe calibrator variable404TRACI_CONST int RESPONSE_SUBSCRIBE_CALIBRATOR_VARIABLE = 0x67;405406// command: subscribe rerouter context407TRACI_CONST int CMD_SUBSCRIBE_REROUTER_CONTEXT = 0x08;408// response: subscribe rerouter context409TRACI_CONST int RESPONSE_SUBSCRIBE_REROUTER_CONTEXT = 0x18;410// command: get rerouter variable411TRACI_CONST int CMD_GET_REROUTER_VARIABLE = 0x28;412// response: get rerouter variable413TRACI_CONST int RESPONSE_GET_REROUTER_VARIABLE = 0x38;414// command: set rerouter variable415TRACI_CONST int CMD_SET_REROUTER_VARIABLE = 0x48;416// command: subscribe rerouter variable417TRACI_CONST int CMD_SUBSCRIBE_REROUTER_VARIABLE = 0x58;418// response: subscribe rerouter variable419TRACI_CONST int RESPONSE_SUBSCRIBE_REROUTER_VARIABLE = 0x68;420421// command: subscribe variablespeedsign context422TRACI_CONST int CMD_SUBSCRIBE_VARIABLESPEEDSIGN_CONTEXT = 0x09;423// response: subscribe variablespeedsign context424TRACI_CONST int RESPONSE_SUBSCRIBE_VARIABLESPEEDSIGN_CONTEXT = 0x19;425// command: get variablespeedsign variable426TRACI_CONST int CMD_GET_VARIABLESPEEDSIGN_VARIABLE = 0x29;427// response: get variablespeedsign variable428TRACI_CONST int RESPONSE_GET_VARIABLESPEEDSIGN_VARIABLE = 0x39;429// command: set variablespeedsign variable430TRACI_CONST int CMD_SET_VARIABLESPEEDSIGN_VARIABLE = 0x49;431// command: subscribe variablespeedsign variable432TRACI_CONST int CMD_SUBSCRIBE_VARIABLESPEEDSIGN_VARIABLE = 0x59;433// response: subscribe variablespeedsign variable434TRACI_CONST int RESPONSE_SUBSCRIBE_VARIABLESPEEDSIGN_VARIABLE = 0x69;435436// command: subscribe meandata context437TRACI_CONST int CMD_SUBSCRIBE_MEANDATA_CONTEXT = 0x0a;438// response: subscribe meandata context439TRACI_CONST int RESPONSE_SUBSCRIBE_MEANDATA_CONTEXT = 0x1a;440// command: get meandata variable441TRACI_CONST int CMD_GET_MEANDATA_VARIABLE = 0x2a;442// response: get meandata variable443TRACI_CONST int RESPONSE_GET_MEANDATA_VARIABLE = 0x3a;444// command: set meandata variable, not used yet445TRACI_CONST int CMD_SET_MEANDATA_VARIABLE = 0x4a;446// command: subscribe meandata variable447TRACI_CONST int CMD_SUBSCRIBE_MEANDATA_VARIABLE = 0x5a;448// response: subscribe meandata variable449TRACI_CONST int RESPONSE_SUBSCRIBE_MEANDATA_VARIABLE = 0x6a;450451// command: subscribe overheadwire context452TRACI_CONST int CMD_SUBSCRIBE_OVERHEADWIRE_CONTEXT = 0x0b;453// response: subscribe overheadwire context454TRACI_CONST int RESPONSE_SUBSCRIBE_OVERHEADWIRE_CONTEXT = 0x1b;455// command: get overheadwire variable456TRACI_CONST int CMD_GET_OVERHEADWIRE_VARIABLE = 0x2b;457// response: get overheadwire variable458TRACI_CONST int RESPONSE_GET_OVERHEADWIRE_VARIABLE = 0x3b;459// command: set overheadwire variable460TRACI_CONST int CMD_SET_OVERHEADWIRE_VARIABLE = 0x4b;461// command: subscribe overheadwire variable462TRACI_CONST int CMD_SUBSCRIBE_OVERHEADWIRE_VARIABLE = 0x5b;463// response: subscribe overheadwire variable464TRACI_CONST int RESPONSE_SUBSCRIBE_OVERHEADWIRE_VARIABLE = 0x6b;465466467// ****************************************468// POSITION REPRESENTATIONS469// ****************************************470// Position in geo-coordinates471TRACI_CONST int POSITION_LON_LAT = 0x00;472// 2D cartesian coordinates473TRACI_CONST int POSITION_2D = 0x01;474// Position in geo-coordinates with altitude475TRACI_CONST int POSITION_LON_LAT_ALT = 0x02;476// 3D cartesian coordinates477TRACI_CONST int POSITION_3D = 0x03;478// Position on road map479TRACI_CONST int POSITION_ROADMAP = 0x04;480481482// ****************************************483// DATA TYPES484// ****************************************485// Polygon (2*n doubles)486TRACI_CONST int TYPE_POLYGON = 0x06;487// unsigned byte488TRACI_CONST int TYPE_UBYTE = 0x07;489// signed byte490TRACI_CONST int TYPE_BYTE = 0x08;491// 32 bit signed integer492TRACI_CONST int TYPE_INTEGER = 0x09;493// double precision float494TRACI_CONST int TYPE_DOUBLE = 0x0B;495// 8 bit ASCII string496TRACI_CONST int TYPE_STRING = 0x0C;497// list of strings498TRACI_CONST int TYPE_STRINGLIST = 0x0E;499// compound object500TRACI_CONST int TYPE_COMPOUND = 0x0F;501// list of double precision floats502TRACI_CONST int TYPE_DOUBLELIST = 0x10;503// color (four ubytes)504TRACI_CONST int TYPE_COLOR = 0x11;505506507// ****************************************508// RESULT TYPES509// ****************************************510// result type: Ok511TRACI_CONST int RTYPE_OK = 0x00;512// result type: not implemented513TRACI_CONST int RTYPE_NOTIMPLEMENTED = 0x01;514// result type: error515TRACI_CONST int RTYPE_ERR = 0xFF;516517// ****************************************518// special return or parameter values519// ****************************************520// return value for invalid queries (especially vehicle is not on the road), see Position::INVALID521TRACI_CONST double INVALID_DOUBLE_VALUE = -1073741824.0;522// return value for invalid queries (especially vehicle is not on the road), see Position::INVALID523TRACI_CONST int INVALID_INT_VALUE = -1073741824;524// maximum value for client ordering (2 ^ 30)525TRACI_CONST int MAX_ORDER = 1073741824;526// default number of connection attempts527TRACI_CONST int DEFAULT_NUM_RETRIES = 60;528529530// ****************************************531// DIFFERENT DISTANCE REQUESTS532// ****************************************533// air distance534TRACI_CONST int REQUEST_AIRDIST = 0x00;535// driving distance536TRACI_CONST int REQUEST_DRIVINGDIST = 0x01;537538539// ****************************************540// VEHICLE REMOVAL REASONS541// ****************************************542// vehicle started teleport543TRACI_CONST int REMOVE_TELEPORT = 0x00;544// vehicle removed while parking545TRACI_CONST int REMOVE_PARKING = 0x01;546// vehicle arrived547TRACI_CONST int REMOVE_ARRIVED = 0x02;548// vehicle was vaporized549TRACI_CONST int REMOVE_VAPORIZED = 0x03;550// vehicle finished route during teleport551TRACI_CONST int REMOVE_TELEPORT_ARRIVED = 0x04;552553// ****************************************554// VEHICLE MOVE REASONS555// ****************************************556// infer reason from move distance557TRACI_CONST int MOVE_AUTOMATIC = 0x00;558// vehicle teleports to another location559TRACI_CONST int MOVE_TELEPORT = 0x01;560// vehicle moved normally561TRACI_CONST int MOVE_NORMAL = 0x02;562563// ****************************************564// PERSON/CONTAINER STAGES565// ****************************************566// person / container stopping567TRACI_CONST int STAGE_WAITING_FOR_DEPART = 0x00;568// person / container stopping569TRACI_CONST int STAGE_WAITING = 0x01;570// person walking571TRACI_CONST int STAGE_WALKING = 0x02;572// person riding / container being transported573TRACI_CONST int STAGE_DRIVING = 0x03;574// person accessing stopping place575TRACI_CONST int STAGE_ACCESS = 0x04;576// stage for encoding abstract travel demand577TRACI_CONST int STAGE_TRIP = 0x05;578// person / container transhiping579TRACI_CONST int STAGE_TRANSHIP = 0x06;580581// ****************************************582// Stop Flags583// ****************************************584TRACI_CONST int STOP_DEFAULT = 0x00;585TRACI_CONST int STOP_PARKING = 0x01;586TRACI_CONST int STOP_TRIGGERED = 0x02;587TRACI_CONST int STOP_CONTAINER_TRIGGERED = 0x04;588TRACI_CONST int STOP_BUS_STOP = 0x08;589TRACI_CONST int STOP_CONTAINER_STOP = 0x10;590TRACI_CONST int STOP_CHARGING_STATION = 0x20;591TRACI_CONST int STOP_PARKING_AREA = 0x40;592TRACI_CONST int STOP_OVERHEAD_WIRE = 0x80;593594// ****************************************595// Departure Flags (corresponding value from DepartDefinition, DepartLaneDefinition with a minus)596// ****************************************597TRACI_CONST int DEPARTFLAG_TRIGGERED = -0x01;598TRACI_CONST int DEPARTFLAG_CONTAINER_TRIGGERED = -0x02;599TRACI_CONST int DEPARTFLAG_NOW = -0x03;600TRACI_CONST int DEPARTFLAG_SPLIT = -0x04;601TRACI_CONST int DEPARTFLAG_BEGIN = -0x05;602603TRACI_CONST int DEPARTFLAG_SPEED_RANDOM = -0x02;604TRACI_CONST int DEPARTFLAG_SPEED_MAX = -0x03;605606TRACI_CONST int DEPARTFLAG_LANE_RANDOM = -0x02;607TRACI_CONST int DEPARTFLAG_LANE_FREE = -0x03;608TRACI_CONST int DEPARTFLAG_LANE_ALLOWED_FREE = -0x04;609TRACI_CONST int DEPARTFLAG_LANE_BEST_FREE = -0x05;610TRACI_CONST int DEPARTFLAG_LANE_FIRST_ALLOWED = -0x06;611612TRACI_CONST int DEPARTFLAG_POS_RANDOM = -0x02;613TRACI_CONST int DEPARTFLAG_POS_FREE = -0x03;614TRACI_CONST int DEPARTFLAG_POS_BASE = -0x04;615TRACI_CONST int DEPARTFLAG_POS_LAST = -0x05;616TRACI_CONST int DEPARTFLAG_POS_RANDOM_FREE = -0x06;617618TRACI_CONST int ARRIVALFLAG_LANE_CURRENT = -0x02;619TRACI_CONST int ARRIVALFLAG_SPEED_CURRENT = -0x02;620621TRACI_CONST int ARRIVALFLAG_POS_RANDOM = -0x02;622TRACI_CONST int ARRIVALFLAG_POS_MAX = -0x03;623624// ****************************************625// Routing modes626// ****************************************627// use custom weights if available, fall back to loaded weights and then to free-flow speed628TRACI_CONST int ROUTING_MODE_DEFAULT = 0x00;629// use aggregated travel times from device.rerouting630TRACI_CONST int ROUTING_MODE_AGGREGATED = 0x01;631// use loaded efforts632TRACI_CONST int ROUTING_MODE_EFFORT = 0x02;633// use combined costs634TRACI_CONST int ROUTING_MODE_COMBINED = 0x03;635// use aggregated travel times from device.rerouting enriched with custom weights636TRACI_CONST int ROUTING_MODE_AGGREGATED_CUSTOM = 0x04;637// when this bit is set, routing does not consider temporary permission changes (i.e. from rerouters)638// note: can be combined with either one of the other modes (bitwise)639TRACI_CONST int ROUTING_MODE_IGNORE_TRANSIENT_PERMISSIONS = 0x08;640641// ****************************************642// Traffic light types643// ****************************************644TRACI_CONST int TRAFFICLIGHT_TYPE_STATIC = 0x00;645TRACI_CONST int TRAFFICLIGHT_TYPE_ACTUATED = 0x03;646TRACI_CONST int TRAFFICLIGHT_TYPE_NEMA = 0x04;647TRACI_CONST int TRAFFICLIGHT_TYPE_DELAYBASED = 0x05;648649// ****************************************650// Lane change directions651// ****************************************652TRACI_CONST int LANECHANGE_LEFT = 0x01;653TRACI_CONST int LANECHANGE_RIGHT = -0x01;654655// ****************************************656// FILTER TYPES (for context subscription filters)657// ****************************************658659// Reset all filters660TRACI_CONST int FILTER_TYPE_NONE = 0x00;661662// Filter by list of lanes relative to ego vehicle663TRACI_CONST int FILTER_TYPE_LANES = 0x01;664665// Exclude vehicles on opposite (and other) lanes from context subscription result666TRACI_CONST int FILTER_TYPE_NOOPPOSITE = 0x02;667668// Specify maximal downstream distance for vehicles in context subscription result669TRACI_CONST int FILTER_TYPE_DOWNSTREAM_DIST = 0x03;670671// Specify maximal upstream distance for vehicles in context subscription result672TRACI_CONST int FILTER_TYPE_UPSTREAM_DIST = 0x04;673674// Only return leader and follower on the specified lanes in context subscription result675TRACI_CONST int FILTER_TYPE_LEAD_FOLLOW = 0x05;676677// Only return foes on upcoming junctions in context subscription result678TRACI_CONST int FILTER_TYPE_TURN = 0x07;679680// Only return vehicles of the given vClass in context subscription result681TRACI_CONST int FILTER_TYPE_VCLASS = 0x08;682683// Only return vehicles of the given vType in context subscription result684TRACI_CONST int FILTER_TYPE_VTYPE = 0x09;685686// Only return vehicles within field of vision in context subscription result687TRACI_CONST int FILTER_TYPE_FIELD_OF_VISION = 0x0A;688689// Only return vehicles within the given lateral distance in context subscription result690TRACI_CONST int FILTER_TYPE_LATERAL_DIST = 0x0B;691692// ****************************************693// VARIABLE TYPES (for CMD_GET_*_VARIABLE)694// ****************************************695// list of instances' ids (get: all)696TRACI_CONST int TRACI_ID_LIST = 0x00;697698// count of instances (get: all)699TRACI_CONST int ID_COUNT = 0x01;700701// subscribe object variables (get: all)702TRACI_CONST int AUTOMATIC_VARIABLES_SUBSCRIPTION = 0x02;703704// subscribe context variables (get: all)705TRACI_CONST int AUTOMATIC_CONTEXT_SUBSCRIPTION = 0x03;706707// generic attributes (get/set: all)708TRACI_CONST int GENERIC_ATTRIBUTE = 0x03;709710// last step vehicle number (get: induction loops, multi-entry/multi-exit detector, lanes, edges)711TRACI_CONST int LAST_STEP_VEHICLE_NUMBER = 0x10;712713// last step vehicle number (get: induction loops, multi-entry/multi-exit detector, lanes, edges)714TRACI_CONST int LAST_STEP_MEAN_SPEED = 0x11;715716// last step vehicle list (get: induction loops, multi-entry/multi-exit detector, lanes, edges)717TRACI_CONST int LAST_STEP_VEHICLE_ID_LIST = 0x12;718719// last step occupancy (get: e1, e2, lanes, edges)720TRACI_CONST int LAST_STEP_OCCUPANCY = 0x13;721722// last step vehicle halting number (get: e2, e3, lanes, edges)723TRACI_CONST int LAST_STEP_VEHICLE_HALTING_NUMBER = 0x14;724725// upstream junction (edges)726TRACI_CONST int FROM_JUNCTION = 0x7b;727728// downstream junction (edges)729TRACI_CONST int TO_JUNCTION = 0x7c;730731// incoming edges (junction)732TRACI_CONST int INCOMING_EDGES = 0x7b;733734// outgoing edges (junction)735TRACI_CONST int OUTGOING_EDGES = 0x7c;736737// get bidi object (edges, lanes)738TRACI_CONST int VAR_BIDI = 0x7f;739740// last step mean vehicle length (get: induction loops, lanes, edges)741TRACI_CONST int LAST_STEP_LENGTH = 0x15;742743// last step time since last detection (get: induction loops)744TRACI_CONST int LAST_STEP_TIME_SINCE_DETECTION = 0x16;745746// entry times (get: inductionloop)747TRACI_CONST int LAST_STEP_VEHICLE_DATA = 0x17;748749// get aggregated occupancy (get: inductionloop, e2)750TRACI_CONST int VAR_INTERVAL_OCCUPANCY = 0x23;751752// get aggregated speed (get: inductionloop, e2)753TRACI_CONST int VAR_INTERVAL_SPEED = 0x24;754755// get aggregated vehicle count (get: inductionloop, e2)756TRACI_CONST int VAR_INTERVAL_NUMBER = 0x25;757758// get aggregated vehicle ids (get: inductionloop)759TRACI_CONST int VAR_INTERVAL_IDS = 0x26;760761// get aggregated vehicle ids (get: inductionloop)762TRACI_CONST int VAR_INTERVAL_TIMELOSS = 0x34;763764// get aggregated speed of last written interval (get: inductionloop, e2)765TRACI_CONST int VAR_LAST_INTERVAL_OCCUPANCY = 0x27;766767// get aggregated occupancy of last written interval (get: inductionloop, e2)768TRACI_CONST int VAR_LAST_INTERVAL_SPEED = 0x28;769770// get aggregated vehicle count of last written interval (get: inductionloop, e2)771TRACI_CONST int VAR_LAST_INTERVAL_NUMBER = 0x29;772773// get aggregated vehicle ids of last written interval (get: inductionloop)774TRACI_CONST int VAR_LAST_INTERVAL_IDS = 0x2a;775776// last step jam length in vehicles (get: e2)777TRACI_CONST int JAM_LENGTH_VEHICLE = 0x18;778779// last step jam length in meters (get: e2)780TRACI_CONST int JAM_LENGTH_METERS = 0x19;781782// get aggregated jam length (e2)783TRACI_CONST int VAR_INTERVAL_MAX_JAM_LENGTH_METERS = 0x32;784785// get prior aggregated jam length (e2)786TRACI_CONST int VAR_LAST_INTERVAL_MAX_JAM_LENGTH_METERS = 0x33;787788// last interval travel time (get: e3)789TRACI_CONST int VAR_LAST_INTERVAL_TRAVELTIME = 0x58;790791// last step vehicle halting number (get: e3)792TRACI_CONST int VAR_LAST_INTERVAL_MEAN_HALTING_NUMBER = 0x20;793794// last interval vehicle count(get: e3)795TRACI_CONST int VAR_LAST_INTERVAL_VEHICLE_NUMBER = 0x21;796797// last interval vehicle count(get: e2, e3)798TRACI_CONST int VAR_LAST_INTERVAL_TIMELOSS = 0x35;799800// last interval vehicle count(set, get: e1, e2)801TRACI_CONST int VAR_VIRTUAL_DETECTION = 0x22;802803// last step person list (get: edges, vehicles)804TRACI_CONST int LAST_STEP_PERSON_ID_LIST = 0x1a;805806// full name (get: edges, simulation, trafficlight)807TRACI_CONST int VAR_NAME = 0x1b;808809// carFollowModel function followSpeed (get: vehicle)810TRACI_CONST int VAR_FOLLOW_SPEED = 0x1c;811812// carFollowModel function stopSpeed (get: vehicle)813TRACI_CONST int VAR_STOP_SPEED = 0x1d;814815// carFollowModel function getSecureGap (get: vehicle)816TRACI_CONST int VAR_SECURE_GAP = 0x1e;817818// estimated (depart) delay for next stop (get: vehicle)819TRACI_CONST int VAR_STOP_DELAY = 0x1f;820821// estimated arrival delay for next stop (get: vehicle)822TRACI_CONST int VAR_STOP_ARRIVALDELAY = 0x22;823824// collected timeLoss since departure (get: vehicle, e3)825TRACI_CONST int VAR_TIMELOSS = 0x8c;826827// begin time(get: calibrator)828TRACI_CONST int VAR_BEGIN = 0x1c;829830// end time(get: calibrator, simulation)831TRACI_CONST int VAR_END = 0x1d;832833// vtype list (get: calibrator)834TRACI_CONST int VAR_VTYPES = 0x1e;835836// vehicles per hour (get: calibrator)837TRACI_CONST int VAR_VEHSPERHOUR = 0x13;838839// passed vehicle count (get: calibrator)840TRACI_CONST int VAR_PASSED = 0x14;841842// inserted vehicle count (get: calibrator)843TRACI_CONST int VAR_INSERTED = 0x15;844845// removed vehicle count (get: calibrator)846TRACI_CONST int VAR_REMOVED = 0x16;847848// routeProbe id (get: calibrator)849TRACI_CONST int VAR_ROUTE_PROBE = 0x17;850851// routeProbe id (get: calibrator)852TRACI_CONST int CMD_SET_FLOW = 0x18;853854// traffic light states, encoded as rRgGyYoO tuple (get: traffic lights)855TRACI_CONST int TL_RED_YELLOW_GREEN_STATE = 0x20;856857// index of the phase (set: traffic lights)858TRACI_CONST int TL_PHASE_INDEX = 0x22;859860// traffic light program (set: traffic lights)861TRACI_CONST int TL_PROGRAM = 0x23;862863// phase duration (set: traffic lights)864TRACI_CONST int TL_PHASE_DURATION = 0x24;865866// vehicles that block passing the given signal (get: traffic lights)867TRACI_CONST int TL_BLOCKING_VEHICLES = 0x25;868869// controlled lanes (get: traffic lights)870TRACI_CONST int TL_CONTROLLED_LANES = 0x26;871872// controlled links (get: traffic lights)873TRACI_CONST int TL_CONTROLLED_LINKS = 0x27;874875// index of the current phase (get: traffic lights)876TRACI_CONST int TL_CURRENT_PHASE = 0x28;877878// name of the current program (get: traffic lights)879TRACI_CONST int TL_CURRENT_PROGRAM = 0x29;880881// vehicles that also wish to pass the given signal (get: traffic lights)882TRACI_CONST int TL_RIVAL_VEHICLES = 0x30;883884// vehicles that also wish to pass the given signal and have higher priority (get: traffic lights)885TRACI_CONST int TL_PRIORITY_VEHICLES = 0x31;886887// controlled junctions (get: traffic lights)888TRACI_CONST int TL_CONTROLLED_JUNCTIONS = 0x2a;889890// complete definition (get: traffic lights)891TRACI_CONST int TL_COMPLETE_DEFINITION_RYG = 0x2b;892893// complete program (set: traffic lights)894TRACI_CONST int TL_COMPLETE_PROGRAM_RYG = 0x2c;895896// assumed time to next switch (get: traffic lights)897TRACI_CONST int TL_NEXT_SWITCH = 0x2d;898899// add/get rail signal constraints900TRACI_CONST int TL_CONSTRAINT = 0x2f;901902// switch order of trains encoded in rail signal constraints (set: traffic lights)903TRACI_CONST int TL_CONSTRAINT_SWAP = 0x32;904905// add/get rail signal constraints by foeSignal (get: traffic lights)906TRACI_CONST int TL_CONSTRAINT_BYFOE = 0x34;907908// add/get rail signal constraints by foeSignal (set: traffic lights)909TRACI_CONST int TL_CONSTRAINT_REMOVE = 0x35;910911// update rail signal constraints by vehID (set: traffic lights)912TRACI_CONST int TL_CONSTRAINT_UPDATE = 0x36;913914// add rail signal constraint (set: traffic lights)915TRACI_CONST int TL_CONSTRAINT_ADD = 0x37;916917// retrieve duration spent in the current phase (get: traffic lights)918TRACI_CONST int TL_SPENT_DURATION = 0x38;919920// outgoing link number (get: lanes)921TRACI_CONST int LANE_LINK_NUMBER = 0x30;922923// id of parent edge (get: lanes)924TRACI_CONST int LANE_EDGE_ID = 0x31;925926// outgoing link definitions (get: lanes)927TRACI_CONST int LANE_LINKS = 0x33;928929// list of allowed vehicle classes (get&set: lanes)930TRACI_CONST int LANE_ALLOWED = 0x34;931932// list of not allowed vehicle classes (get&set: lanes)933TRACI_CONST int LANE_DISALLOWED = 0x35;934935// list of allowed vehicle classes for lane changes (get&set: lanes)936TRACI_CONST int LANE_CHANGES = 0x3c;937938// list of foe lanes (get: lane, vehicle)939TRACI_CONST int VAR_FOES = 0x37;940941// slope (get: edge, lane, vehicle, person)942TRACI_CONST int VAR_SLOPE = 0x36;943944// speed (get: vehicle)945TRACI_CONST int VAR_SPEED = 0x40;946947// adapt previous speed (set: vehicle)948TRACI_CONST int VAR_PREV_SPEED = 0x3c;949950// friction coefficient (set&get: lanes, set: edges)951TRACI_CONST int VAR_FRICTION = 0x3d;952953// lateral speed (get: vehicle)954TRACI_CONST int VAR_SPEED_LAT = 0x32;955956// maximum allowed/possible speed (get: vehicle types, lanes, set: edges, lanes)957TRACI_CONST int VAR_MAXSPEED = 0x41;958959// position (2D) (get: vehicle, poi, inductionloop, lane area detector, multi-entry/multi-exit detector; set: poi)960TRACI_CONST int VAR_POSITION = 0x42;961962// position (2D) (get: multi-entry/multi-exit detector)963TRACI_CONST int VAR_EXIT_POSITIONS = 0x43;964965// position (3D) (get: vehicle, poi, set: poi)966TRACI_CONST int VAR_POSITION3D = 0x39;967968// angle (get: vehicle, edge, lane, poi, gui; set: poi, gui)969TRACI_CONST int VAR_ANGLE = 0x43;970971// length (get: vehicle types, lanes, lane area detector, set: lanes)972TRACI_CONST int VAR_LENGTH = 0x44;973974// color (get: vehicles, vehicle types, polygons, pois)975TRACI_CONST int VAR_COLOR = 0x45;976977// max. acceleration (get: vehicles, vehicle types)978TRACI_CONST int VAR_ACCEL = 0x46;979980// max. comfortable deceleration (get: vehicles, vehicle types)981TRACI_CONST int VAR_DECEL = 0x47;982983// max. (physically possible) deceleration (get: vehicles, vehicle types)984TRACI_CONST int VAR_EMERGENCY_DECEL = 0x7b;985986// apparent deceleration (get: vehicles, vehicle types)987TRACI_CONST int VAR_APPARENT_DECEL = 0x7c;988989// action step length (get: vehicles, vehicle types)990TRACI_CONST int VAR_ACTIONSTEPLENGTH = 0x7d;991992// last action time (get: vehicles)993TRACI_CONST int VAR_LASTACTIONTIME = 0x7f;994995// driver's desired headway (get: vehicle types)996TRACI_CONST int VAR_TAU = 0x48;997998// vehicle class (get: vehicle types)999TRACI_CONST int VAR_VEHICLECLASS = 0x49;10001001// emission class (get: vehicle types)1002TRACI_CONST int VAR_EMISSIONCLASS = 0x4a;10031004// shape class (get: vehicle types)1005TRACI_CONST int VAR_SHAPECLASS = 0x4b;10061007// minimum gap (get: vehicle types)1008TRACI_CONST int VAR_MINGAP = 0x4c;10091010// width (get: vehicle types, lanes, polygons, poi)1011TRACI_CONST int VAR_WIDTH = 0x4d;10121013// shape (get: polygons)1014TRACI_CONST int VAR_SHAPE = 0x4e;10151016// type id (get: vehicles, polygons, pois)1017TRACI_CONST int VAR_TYPE = 0x4f;10181019// road id (get: vehicles)1020TRACI_CONST int VAR_ROAD_ID = 0x50;10211022// lane id (get: vehicles, inductionloop, lane area detector)1023TRACI_CONST int VAR_LANE_ID = 0x51;10241025// lane index (get: vehicle, edge)1026TRACI_CONST int VAR_LANE_INDEX = 0x52;10271028// segment id (get: vehicle)1029TRACI_CONST int VAR_SEGMENT_ID = 0xa1;10301031// segment index (get: vehicle)1032TRACI_CONST int VAR_SEGMENT_INDEX = 0xa2;10331034// route id (get & set: vehicles)1035TRACI_CONST int VAR_ROUTE_ID = 0x53;10361037// edges (get: routes, vehicles)1038TRACI_CONST int VAR_EDGES = 0x54;10391040// filled? (set: vehicles)1041TRACI_CONST int VAR_STOP_PARAMETER = 0x55;10421043// lanes (get: variablespeedsign, multi-entry/multi-exit detector)1044TRACI_CONST int VAR_LANES = 0x30;10451046// exit lanes (get: multi-entry/multi-exit detector)1047TRACI_CONST int VAR_EXIT_LANES = 0x31;10481049// update bestLanes (set: vehicle)1050TRACI_CONST int VAR_UPDATE_BESTLANES = 0x6a;10511052// filled? (get: polygons)1053TRACI_CONST int VAR_FILL = 0x55;10541055// get/set image file (poi, poly, vehicle, person, simulation)1056TRACI_CONST int VAR_IMAGEFILE = 0x93;10571058// position (1D along lane) (get: vehicle)1059TRACI_CONST int VAR_LANEPOSITION = 0x56;10601061// route (set: vehicles)1062TRACI_CONST int VAR_ROUTE = 0x57;10631064// travel time information (get&set: vehicle)1065TRACI_CONST int VAR_EDGE_TRAVELTIME = 0x58;10661067// effort information (get&set: vehicle)1068TRACI_CONST int VAR_EDGE_EFFORT = 0x59;10691070// last step travel time (get: edge, lane, e3)1071TRACI_CONST int VAR_CURRENT_TRAVELTIME = 0x5a;10721073// signals state (get/set: vehicle)1074TRACI_CONST int VAR_SIGNALS = 0x5b;10751076// vehicle: new lane/position along (set: vehicle)1077TRACI_CONST int VAR_MOVE_TO = 0x5c;10781079// polygon: add dynamics (set: polygon)1080TRACI_CONST int VAR_ADD_DYNAMICS = 0x5c;10811082// vehicle: highlight (set: vehicle, poi)1083TRACI_CONST int VAR_HIGHLIGHT = 0x6c;10841085// driver imperfection (set: vehicle)1086TRACI_CONST int VAR_IMPERFECTION = 0x5d;10871088// speed factor (set: vehicle)1089TRACI_CONST int VAR_SPEED_FACTOR = 0x5e;10901091// speed deviation (set: vehicle)1092TRACI_CONST int VAR_SPEED_DEVIATION = 0x5f;10931094// routing mode (get/set: vehicle)1095TRACI_CONST int VAR_ROUTING_MODE = 0x89;10961097// speed without TraCI influence (get: vehicle)1098TRACI_CONST int VAR_SPEED_WITHOUT_TRACI = 0xb1;10991100// best lanes (get: vehicle)1101TRACI_CONST int VAR_BEST_LANES = 0xb2;11021103// how speed is set (set: vehicle)1104TRACI_CONST int VAR_SPEEDSETMODE = 0xb3;11051106// move vehicle to explicit (remote controlled) position (set: vehicle)1107TRACI_CONST int MOVE_TO_XY = 0xb4;11081109// is the vehicle stopped, and if so parked and/or triggered?1110// value = stopped + 2 * parking + 4 * triggered1111TRACI_CONST int VAR_STOPSTATE = 0xb5;11121113// how lane changing is performed (get/set: vehicle)1114TRACI_CONST int VAR_LANECHANGE_MODE = 0xb6;11151116// maximum speed regarding max speed on the current lane and speed factor (get: vehicle)1117TRACI_CONST int VAR_ALLOWED_SPEED = 0xb7;11181119// position (1D lateral position relative to center of the current lane) (get: vehicle)1120TRACI_CONST int VAR_LANEPOSITION_LAT = 0xb8;11211122// get/set prefered lateral alignment within the lane (vehicle)1123TRACI_CONST int VAR_LATALIGNMENT = 0xb9;11241125// get/set maximum lateral speed (vehicle, vtypes)1126TRACI_CONST int VAR_MAXSPEED_LAT = 0xba;11271128// get/set minimum lateral gap (vehicle, vtypes)1129TRACI_CONST int VAR_MINGAP_LAT = 0xbb;11301131// get/set vehicle height (vehicle, vtypes, poi)1132TRACI_CONST int VAR_HEIGHT = 0xbc;11331134// get/set mass (vehicle, vtype)1135TRACI_CONST int VAR_MASS = 0xc8;11361137// get/set vehicle line1138TRACI_CONST int VAR_LINE = 0xbd;11391140// get/set vehicle via1141TRACI_CONST int VAR_VIA = 0xbe;11421143// get (lane change relevant) neighboring vehicles (vehicles)1144TRACI_CONST int VAR_NEIGHBORS = 0xbf;11451146// current CO2 emission of a node (get: vehicle, lane, edge)1147TRACI_CONST int VAR_CO2EMISSION = 0x60;11481149// current CO emission of a node (get: vehicle, lane, edge)1150TRACI_CONST int VAR_COEMISSION = 0x61;11511152// current HC emission of a node (get: vehicle, lane, edge)1153TRACI_CONST int VAR_HCEMISSION = 0x62;11541155// current PMx emission of a node (get: vehicle, lane, edge)1156TRACI_CONST int VAR_PMXEMISSION = 0x63;11571158// current NOx emission of a node (get: vehicle, lane, edge)1159TRACI_CONST int VAR_NOXEMISSION = 0x64;11601161// current fuel consumption of a node (get: vehicle, lane, edge)1162TRACI_CONST int VAR_FUELCONSUMPTION = 0x65;11631164// current noise emission of a node (get: vehicle, lane, edge)1165TRACI_CONST int VAR_NOISEEMISSION = 0x66;11661167// current person number (get: vehicle, trafficlight)1168TRACI_CONST int VAR_PERSON_NUMBER = 0x67;11691170// person capacity (vehicle, vehicle type)1171TRACI_CONST int VAR_PERSON_CAPACITY = 0x38;11721173// departure time (vehicle, person)1174TRACI_CONST int VAR_DEPARTURE = 0x3a;11751176// departure delay (vehicle, person)1177TRACI_CONST int VAR_DEPART_DELAY = 0x3b;11781179// boarding time (get: vehicle type, vehicle, person)1180TRACI_CONST int VAR_BOARDING_DURATION = 0x2f;11811182// impatience (get,set: vehicle type, vehicle, person)1183TRACI_CONST int VAR_IMPATIENCE = 0x26;11841185TRACI_CONST int VAR_BUS_STOP_ID_LIST = 0x9f;11861187// number of persons waiting at a defined bus stop (get: simulation)1188TRACI_CONST int VAR_BUS_STOP_WAITING = 0x67;11891190// ids of persons waiting at a defined bus stop (get: simulation)1191TRACI_CONST int VAR_BUS_STOP_WAITING_IDS = 0xef;11921193// current leader together with gap (get: vehicle)1194TRACI_CONST int VAR_LEADER = 0x68;11951196// current leader together with gap (get: vehicle)1197TRACI_CONST int VAR_FOLLOWER = 0x78;11981199// edge index in current route (get: vehicle)1200TRACI_CONST int VAR_ROUTE_INDEX = 0x69;12011202// current waiting time (get: vehicle, lane)1203TRACI_CONST int VAR_WAITING_TIME = 0x7a;12041205// current waiting time (get: vehicle)1206TRACI_CONST int VAR_ACCUMULATED_WAITING_TIME = 0x87;12071208// upcoming traffic lights (get: vehicle)1209TRACI_CONST int VAR_NEXT_TLS = 0x70;12101211// upcoming stops (get: vehicle)1212TRACI_CONST int VAR_NEXT_STOPS = 0x73;12131214// upcoming stops with selection (get: vehicle)1215TRACI_CONST int VAR_NEXT_STOPS2 = 0x74;12161217// upcoming links(get: vehicle)1218TRACI_CONST int VAR_NEXT_LINKS = 0x33;12191220// current acceleration (get,set: vehicle)1221TRACI_CONST int VAR_ACCELERATION = 0x72;12221223// arrival position (get,set: vehicle)1224TRACI_CONST int VAR_ARRIVALPOS = 0x75;12251226// arrival lane (get,set: vehicle)1227TRACI_CONST int VAR_ARRIVALLANE = 0x76;12281229// arrival speed (get,set: vehicle)1230TRACI_CONST int VAR_ARRIVALSPEED = 0x77;12311232// add log message (set: simulation)1233TRACI_CONST int CMD_MESSAGE = 0x65;12341235// current time in seconds (get: simulation)1236TRACI_CONST int VAR_TIME = 0x66;12371238// current time step (get: simulation)1239TRACI_CONST int VAR_TIME_STEP = 0x70;12401241// current electricity consumption of a node (get: vehicle, lane, edge)1242TRACI_CONST int VAR_ELECTRICITYCONSUMPTION = 0x71;12431244// number of loaded vehicles (get: simulation)1245TRACI_CONST int VAR_LOADED_VEHICLES_NUMBER = 0x71;12461247// loaded vehicle ids (get: simulation)1248TRACI_CONST int VAR_LOADED_VEHICLES_IDS = 0x72;12491250// number of departed vehicle (get: simulation)1251TRACI_CONST int VAR_DEPARTED_VEHICLES_NUMBER = 0x73;12521253// departed vehicle ids (get: simulation)1254TRACI_CONST int VAR_DEPARTED_VEHICLES_IDS = 0x74;12551256// number of vehicles starting to teleport (get: simulation)1257TRACI_CONST int VAR_TELEPORT_STARTING_VEHICLES_NUMBER = 0x75;12581259// ids of vehicles starting to teleport (get: simulation)1260TRACI_CONST int VAR_TELEPORT_STARTING_VEHICLES_IDS = 0x76;12611262// number of vehicles ending to teleport (get: simulation)1263TRACI_CONST int VAR_TELEPORT_ENDING_VEHICLES_NUMBER = 0x77;12641265// ids of vehicles ending to teleport (get: simulation)1266TRACI_CONST int VAR_TELEPORT_ENDING_VEHICLES_IDS = 0x78;12671268// number of arrived vehicles (get: simulation)1269TRACI_CONST int VAR_ARRIVED_VEHICLES_NUMBER = 0x79;12701271// ids of arrived vehicles (get: simulation)1272TRACI_CONST int VAR_ARRIVED_VEHICLES_IDS = 0x7a;12731274// delta t (get: simulation)1275TRACI_CONST int VAR_DELTA_T = 0x7b;12761277// bounding box (get: simulation)1278TRACI_CONST int VAR_NET_BOUNDING_BOX = 0x7c;12791280// minimum number of expected vehicles (get: simulation)1281TRACI_CONST int VAR_MIN_EXPECTED_VEHICLES = 0x7d;12821283// number of departed persons (get: simulation)1284TRACI_CONST int VAR_DEPARTED_PERSONS_NUMBER = 0x24;12851286// departed person ids (get: simulation)1287TRACI_CONST int VAR_DEPARTED_PERSONS_IDS = 0x25;12881289// number of arrived persons (get: simulation)1290TRACI_CONST int VAR_ARRIVED_PERSONS_NUMBER = 0x26;12911292// ids of arrived persons (get: simulation)1293TRACI_CONST int VAR_ARRIVED_PERSONS_IDS = 0x27;12941295// number of vehicles starting to park (get: simulation)1296TRACI_CONST int VAR_STOP_STARTING_VEHICLES_NUMBER = 0x68;12971298// ids of vehicles starting to park (get: simulation)1299TRACI_CONST int VAR_STOP_STARTING_VEHICLES_IDS = 0x69;13001301// number of vehicles ending to park (get: simulation)1302TRACI_CONST int VAR_STOP_ENDING_VEHICLES_NUMBER = 0x6a;13031304// ids of vehicles ending to park (get: simulation)1305TRACI_CONST int VAR_STOP_ENDING_VEHICLES_IDS = 0x6b;13061307// number of vehicles starting to park (get: simulation)1308TRACI_CONST int VAR_PARKING_STARTING_VEHICLES_NUMBER = 0x6c;13091310// ids of vehicles starting to park (get: simulation)1311TRACI_CONST int VAR_PARKING_STARTING_VEHICLES_IDS = 0x6d;13121313// number of vehicles maneuvering (get: simulation)1314TRACI_CONST int VAR_PARKING_MANEUVERING_VEHICLES_NUMBER = 0x3a;13151316// ids of vehicles maneuvering (get: simulation)1317TRACI_CONST int VAR_PARKING_MANEUVERING_VEHICLES_IDS = 0x3b;13181319// number of vehicles ending to park (get: simulation)1320TRACI_CONST int VAR_PARKING_ENDING_VEHICLES_NUMBER = 0x6e;13211322// ids of vehicles ending to park (get: simulation)1323TRACI_CONST int VAR_PARKING_ENDING_VEHICLES_IDS = 0x6f;13241325// number of vehicles involved in a collision (get: simulation)1326TRACI_CONST int VAR_COLLIDING_VEHICLES_NUMBER = 0x80;13271328// ids of vehicles involved in a collision (get: simulation)1329TRACI_CONST int VAR_COLLIDING_VEHICLES_IDS = 0x81;13301331// number of vehicles involved in a collision (get: simulation)1332TRACI_CONST int VAR_EMERGENCYSTOPPING_VEHICLES_NUMBER = 0x89;13331334// ids of vehicles involved in a collision (get: simulation)1335TRACI_CONST int VAR_EMERGENCYSTOPPING_VEHICLES_IDS = 0x8a;13361337// scale traffic (set, get: simulation, vehicle)1338TRACI_CONST int VAR_SCALE = 0x8e;13391340// clears the simulation of all not inserted vehicles (set: simulation)1341TRACI_CONST int CMD_CLEAR_PENDING_VEHICLES = 0x94;13421343// retrieve number of not inserted vehicles (get: simulation, edge, lane)1344TRACI_CONST int VAR_PENDING_VEHICLES = 0x94;13451346// retrieve global option value (get: simulation)1347TRACI_CONST int VAR_OPTION = 0x32;13481349// triggers saving simulation state (set: simulation)1350TRACI_CONST int CMD_SAVE_SIMSTATE = 0x95;13511352// triggers saving simulation state (set: simulation)1353TRACI_CONST int CMD_LOAD_SIMSTATE = 0x96;13541355// retrieve detail data for each collision1356TRACI_CONST int VAR_COLLISIONS = 0x23;13571358// return loaded vehicles regardless of visibility (excluding arrived)1359TRACI_CONST int VAR_LOADED_LIST = 0x24;13601361// return teleporting vehicles1362TRACI_CONST int VAR_TELEPORTING_LIST = 0x25;13631364// sets/retrieves abstract parameter1365TRACI_CONST int VAR_PARAMETER = 0x7e;13661367// retrieves abstract parameter and returns (key, value) tuple1368TRACI_CONST int VAR_PARAMETER_WITH_KEY = 0x3e;13691370// add an instance (poi, polygon, vehicle, person, route, gui)1371TRACI_CONST int ADD = 0x80;13721373// remove an instance (poi, polygon, vehicle, person, gui, route)1374TRACI_CONST int REMOVE = 0x81;13751376// copy an instance (vehicle type, other TBD.)1377TRACI_CONST int COPY = 0x88;13781379// convert coordinates1380TRACI_CONST int POSITION_CONVERSION = 0x82;13811382// distance between points or vehicles1383TRACI_CONST int DISTANCE_REQUEST = 0x83;13841385// the current driving distance1386TRACI_CONST int VAR_DISTANCE = 0x84;13871388// add a fully specified instance (vehicle)1389TRACI_CONST int ADD_FULL = 0x85;13901391// find a car based route1392TRACI_CONST int FIND_ROUTE = 0x86;13931394// find an intermodal route1395TRACI_CONST int FIND_INTERMODAL_ROUTE = 0x87;13961397// force rerouting based on travel time (vehicles)1398TRACI_CONST int CMD_REROUTE_TRAVELTIME = 0x90;13991400// force rerouting based on effort (vehicles)1401TRACI_CONST int CMD_REROUTE_EFFORT = 0x91;14021403// validates current route (vehicles)1404TRACI_CONST int VAR_ROUTE_VALID = 0x92;14051406// retrieve information regarding the current person/container stage1407TRACI_CONST int VAR_STAGE = 0xc0;14081409// retrieve information regarding the next edge including crossings and walkingAreas (pedestrians only)1410TRACI_CONST int VAR_NEXT_EDGE = 0xc1;14111412// retrieve information regarding the number of remaining stages1413TRACI_CONST int VAR_STAGES_REMAINING = 0xc2;14141415// retrieve the current vehicle id for the driving stage (person, container)1416TRACI_CONST int VAR_VEHICLE = 0xc3;14171418// append a person stage (person)1419TRACI_CONST int APPEND_STAGE = 0xc4;14201421// replace a person stage (person)1422TRACI_CONST int REPLACE_STAGE = 0xcd;14231424// append a person stage (person)1425TRACI_CONST int REMOVE_STAGE = 0xc5;14261427// retrieve taxi reservation (person)1428TRACI_CONST int VAR_TAXI_RESERVATIONS = 0xc6;14291430// manipulate taxi reservation (person)1431TRACI_CONST int SPLIT_TAXI_RESERVATIONS = 0xc7;14321433// sample last route (routeprobe)1434TRACI_CONST int VAR_SAMPLE_LAST = 0x20;14351436// sample current route (routeprobe)1437TRACI_CONST int VAR_SAMPLE_CURRENT = 0x21;14381439// zoom1440TRACI_CONST int VAR_VIEW_ZOOM = 0xa0;14411442// view position1443TRACI_CONST int VAR_VIEW_OFFSET = 0xa1;14441445// view schema1446TRACI_CONST int VAR_VIEW_SCHEMA = 0xa2;14471448// view by boundary1449TRACI_CONST int VAR_VIEW_BOUNDARY = 0xa3;14501451// select/deselect object (gui)1452TRACI_CONST int VAR_SELECT = 0xa4;14531454// screenshot1455TRACI_CONST int VAR_SCREENSHOT = 0xa5;14561457// track vehicle1458TRACI_CONST int VAR_TRACK_VEHICLE = 0xa6;14591460// presence of view1461TRACI_CONST int VAR_HAS_VIEW = 0xa7;14621463// charging station power1464TRACI_CONST int VAR_CS_POWER = 0x97;14651466// charging station power1467TRACI_CONST int VAR_CS_EFFICIENCY = 0x98;14681469// charging station power1470TRACI_CONST int VAR_CS_CHARGE_IN_TRANSIT = 0x99;14711472// charging station power1473TRACI_CONST int VAR_CS_CHARGE_DELAY = 0x9a;14741475// parking area access permissions1476TRACI_CONST int VAR_ACCESS_BADGE = 0x9b;14771478} // namespace libsumo14791480#undef TRACI_CONST148114821483