Definition in file SUMOVehicleClass.h.
#include <config.h>
#include <string>
#include <vector>
#include <utils/common/UtilExceptions.h>
Go to the source code of this file.
Enumerations | |
| enum | SUMOEmissionClass { SVE_UNKNOWN = -1, SVE_HDV_3_1 = 0, SVE_HDV_3_2, SVE_HDV_3_3, SVE_HDV_6_1, SVE_HDV_6_2, SVE_HDV_6_3, SVE_HDV_6_4, SVE_HDV_6_5, SVE_HDV_6_6, SVE_HDV_12_1, SVE_HDV_12_2, SVE_HDV_12_3, SVE_HDV_12_4, SVE_HDV_12_5, SVE_HDV_12_6, SVE_HDV_12_7, SVE_HDV_12_8, SVE_HDV_12_9, SVE_HDV_12_10, SVE_HDV_12_11, SVE_HDV_12_12, SVE_P_LDV_7_1, SVE_P_LDV_7_2, SVE_P_LDV_7_3, SVE_P_LDV_7_4, SVE_P_LDV_7_5, SVE_P_LDV_7_6, SVE_P_LDV_7_7, SVE_P_LDV_14_1, SVE_P_LDV_14_2, SVE_P_LDV_14_3, SVE_P_LDV_14_4, SVE_P_LDV_14_5, SVE_P_LDV_14_6, SVE_P_LDV_14_7, SVE_P_LDV_14_8, SVE_P_LDV_14_9, SVE_P_LDV_14_10, SVE_P_LDV_14_11, SVE_P_LDV_14_12, SVE_P_LDV_14_13, SVE_P_LDV_14_14, SVE_ZERO_EMISSIONS } |
| Definition of vehicle emission classes. More... | |
| enum | SUMOVehicleClass { SVC_UNKNOWN = 0, SVC_PRIVATE = 1, SVC_PUBLIC_TRANSPORT = 2, SVC_PUBLIC_EMERGENCY = 4, SVC_PUBLIC_AUTHORITY = 8, SVC_PUBLIC_ARMY = 16, SVC_VIP = 32, SVC_IGNORING = 64, SVC_PASSENGER = 256, SVC_HOV = 512, SVC_TAXI = 1024, SVC_BUS = 2048, SVC_DELIVERY = 4096, SVC_TRANSPORT = 8192, SVC_LIGHTRAIL = 16384, SVC_CITYRAIL = 32768, SVC_RAIL_SLOW = 65536, SVC_RAIL_FAST = 131072, SVC_MOTORCYCLE = 262144, SVC_BICYCLE = 524288, SVC_PEDESTRIAN = 1048576 } |
| Definition of vehicle classes to differ between different lane usage and authority types. More... | |
| enum | SUMOVehicleShape { SVS_UNKNOWN, SVS_PEDESTRIAN, SVS_BICYCLE, SVS_MOTORCYCLE, SVS_PASSENGER, SVS_PASSENGER_SEDAN, SVS_PASSENGER_HATCHBACK, SVS_PASSENGER_WAGON, SVS_PASSENGER_VAN, SVS_DELIVERY, SVS_TRANSPORT, SVS_TRANSPORT_SEMITRAILER, SVS_TRANSPORT_1TRAILER, SVS_BUS, SVS_BUS_CITY, SVS_BUS_CITY_FLEXIBLE, SVS_BUS_OVERLAND, SVS_RAIL, SVS_RAIL_LIGHT, SVS_RAIL_CITY, SVS_RAIL_SLOW, SVS_RAIL_FAST, SVS_RAIL_CARGO, SVS_E_VEHICLE } |
| Definition of vehicle classes to differ between different appearences. More... | |
Functions | |
| SUMOVehicleClass | getVehicleClassID (const std::string &name) throw () |
| Returns the class id of the abstract class given by its name. | |
| std::string | getVehicleClassName (SUMOVehicleClass id) throw () |
| Returns the class name of the abstract class given by its id. | |
| SUMOEmissionClass | getVehicleEmissionTypeID (const std::string &name) throw (ProcessError) |
| Returns the class id of the emission class given by its name. | |
| std::string | getVehicleEmissionTypeName (SUMOEmissionClass id) throw () |
| Returns the class name of the emission class given by its id. | |
| SUMOVehicleShape | getVehicleShapeID (const std::string &name) throw () |
| Returns the class id of the shape class given by its name. | |
| std::string | getVehicleShapeName (SUMOVehicleShape id) throw () |
| Returns the class name of the shape class given by its id. | |
| void | initGuiShapeNames () throw () |
| void | parseVehicleClasses (const std::vector< std::string > &classesS, std::vector< SUMOVehicleClass > &classes) throw () |
| Parses the given vector of class names into their enum-representation. | |
| void | parseVehicleClasses (const std::string &classesS, const std::string &allowedS, const std::string &disallowedS, std::vector< SUMOVehicleClass > &allowed, std::vector< SUMOVehicleClass > &disallowed, bool &warnedAboutDeprecatedVClass) throw () |
| Parses the given definition of allowed/disallowed vehicle classes into the given containers. | |
Variables | |
| const std::string | CF_MODEL_BKERNER = CF_MODEL_PREFIX + "BKerner" |
| const char *const | CF_MODEL_BKERNER_STR = CF_MODEL_BKERNER.c_str() |
| const std::string | CF_MODEL_IDM = CF_MODEL_PREFIX + "IDM" |
| const char *const | CF_MODEL_IDM_STR = CF_MODEL_IDM.c_str() |
| const std::string | CF_MODEL_KRAUSS = CF_MODEL_PREFIX + "Krauss" |
| const std::string | CF_MODEL_KRAUSS_ORIG1 = CF_MODEL_PREFIX + "KraussOrig1" |
| const char *const | CF_MODEL_KRAUSS_ORIG1_STR = CF_MODEL_KRAUSS_ORIG1.c_str() |
| const char *const | CF_MODEL_KRAUSS_STR = CF_MODEL_KRAUSS.c_str() |
| const std::string | CF_MODEL_PREFIX = "carFollowing-" |
| const std::string | CF_MODEL_PWAGNER2009 = CF_MODEL_PREFIX + "PWagner2009" |
| const char *const | CF_MODEL_PWAGNER2009_STR = CF_MODEL_PWAGNER2009.c_str() |
| const SUMOReal | DEFAULT_VEH_ACCEL = (SUMOReal) 2.6 |
| const SUMOVehicleClass | DEFAULT_VEH_CLASS = SVC_UNKNOWN |
| const SUMOReal | DEFAULT_VEH_DECEL = (SUMOReal) 4.5 |
| const std::string | DEFAULT_VEH_FOLLOW_MODEL = "Krauss" |
| const SUMOReal | DEFAULT_VEH_GUIOFFSET = (SUMOReal) 2.5 |
| const SUMOReal | DEFAULT_VEH_GUIWIDTH = (SUMOReal) 2. |
| const std::string | DEFAULT_VEH_LANE_CHANGE_MODEL = "dkrajzew2008" |
| const SUMOReal | DEFAULT_VEH_LENGTH = (SUMOReal) 7.5 |
| const SUMOReal | DEFAULT_VEH_MAXSPEED = (SUMOReal) 70. |
| const SUMOReal | DEFAULT_VEH_PROB = (SUMOReal) 1. |
| const SUMOVehicleShape | DEFAULT_VEH_SHAPE = SVS_UNKNOWN |
| const SUMOReal | DEFAULT_VEH_SIGMA = (SUMOReal) 0.5 |
| const SUMOReal | DEFAULT_VEH_SPEEDDEV = (SUMOReal) 0. |
| const SUMOReal | DEFAULT_VEH_SPEEDFACTOR = (SUMOReal) 1. |
| const SUMOReal | DEFAULT_VEH_TAU = (SUMOReal) 1. |
| const std::string | DEFAULT_VTYPE_ID = "DEFAULT_VEHTYPE" |
| enum SUMOEmissionClass |
Definition of vehicle emission classes.
The order is important - HBEFA computation helper use it.
Definition at line 182 of file SUMOVehicleClass.h.
00182 { 00183 SVE_UNKNOWN = -1, 00184 // heavy duty vehicles; 3 clusters 00185 SVE_HDV_3_1 = 0, 00186 SVE_HDV_3_2, 00187 SVE_HDV_3_3, 00188 // heavy duty vehicles; 6 clusters 00189 SVE_HDV_6_1, 00190 SVE_HDV_6_2, 00191 SVE_HDV_6_3, 00192 SVE_HDV_6_4, 00193 SVE_HDV_6_5, 00194 SVE_HDV_6_6, 00195 // heavy duty vehicles; 12 clusters 00196 SVE_HDV_12_1, 00197 SVE_HDV_12_2, 00198 SVE_HDV_12_3, 00199 SVE_HDV_12_4, 00200 SVE_HDV_12_5, 00201 SVE_HDV_12_6, 00202 SVE_HDV_12_7, 00203 SVE_HDV_12_8, 00204 SVE_HDV_12_9, 00205 SVE_HDV_12_10, 00206 SVE_HDV_12_11, 00207 SVE_HDV_12_12, 00208 // passenger & light duty vehicles; 7 clusters 00209 SVE_P_LDV_7_1, 00210 SVE_P_LDV_7_2, 00211 SVE_P_LDV_7_3, 00212 SVE_P_LDV_7_4, 00213 SVE_P_LDV_7_5, 00214 SVE_P_LDV_7_6, 00215 SVE_P_LDV_7_7, 00216 // passenger & light duty vehicles; 14 clusters 00217 SVE_P_LDV_14_1, 00218 SVE_P_LDV_14_2, 00219 SVE_P_LDV_14_3, 00220 SVE_P_LDV_14_4, 00221 SVE_P_LDV_14_5, 00222 SVE_P_LDV_14_6, 00223 SVE_P_LDV_14_7, 00224 SVE_P_LDV_14_8, 00225 SVE_P_LDV_14_9, 00226 SVE_P_LDV_14_10, 00227 SVE_P_LDV_14_11, 00228 SVE_P_LDV_14_12, 00229 SVE_P_LDV_14_13, 00230 SVE_P_LDV_14_14, 00231 // no emissions 00232 SVE_ZERO_EMISSIONS 00233 };
| enum SUMOVehicleClass |
Definition of vehicle classes to differ between different lane usage and authority types.
Bits:
Definition at line 117 of file SUMOVehicleClass.h.
00117 { 00118 SVC_UNKNOWN = 0, 00119 00121 00122 00124 SVC_PRIVATE = 1, 00126 SVC_PUBLIC_TRANSPORT = 2, 00128 SVC_PUBLIC_EMERGENCY = 4, 00130 SVC_PUBLIC_AUTHORITY = 8, 00132 SVC_PUBLIC_ARMY = 16, 00134 SVC_VIP = 32, 00136 SVC_IGNORING = 64, 00138 00139 00141 00142 00144 SVC_PASSENGER = 256, 00146 SVC_HOV = 512, 00148 SVC_TAXI = 1024, 00150 SVC_BUS = 2048, 00152 SVC_DELIVERY = 4096, 00154 SVC_TRANSPORT = 8192, 00156 SVC_LIGHTRAIL = 16384, 00158 SVC_CITYRAIL = 32768, 00160 SVC_RAIL_SLOW = 65536, 00162 SVC_RAIL_FAST = 131072, 00163 00165 SVC_MOTORCYCLE = 262144, 00167 SVC_BICYCLE = 524288, 00169 SVC_PEDESTRIAN = 1048576 00171 00172 };
| enum SUMOVehicleShape |
Definition of vehicle classes to differ between different appearences.
Definition at line 44 of file SUMOVehicleClass.h.
00044 { 00046 SVS_UNKNOWN, 00048 SVS_PEDESTRIAN, 00050 SVS_BICYCLE, 00052 SVS_MOTORCYCLE, 00054 SVS_PASSENGER, 00056 SVS_PASSENGER_SEDAN, 00058 SVS_PASSENGER_HATCHBACK, 00060 SVS_PASSENGER_WAGON, 00062 SVS_PASSENGER_VAN, 00064 SVS_DELIVERY, 00066 SVS_TRANSPORT, 00068 SVS_TRANSPORT_SEMITRAILER, 00070 SVS_TRANSPORT_1TRAILER, 00072 SVS_BUS, 00074 SVS_BUS_CITY, 00076 SVS_BUS_CITY_FLEXIBLE, 00078 SVS_BUS_OVERLAND, 00080 SVS_RAIL, 00082 SVS_RAIL_LIGHT, 00084 SVS_RAIL_CITY, 00086 SVS_RAIL_SLOW, 00088 SVS_RAIL_FAST, 00090 SVS_RAIL_CARGO, 00092 SVS_E_VEHICLE 00093 };
| SUMOVehicleClass getVehicleClassID | ( | const std::string & | name | ) | throw () |
Returns the class id of the abstract class given by its name.
| [in] | name | The name of the abstract vehicle class |
Definition at line 158 of file SUMOVehicleClass.cpp.
References sSVC_BICYCLE(), sSVC_BUS(), sSVC_CITYRAIL(), sSVC_DELIVERY(), sSVC_HOV(), sSVC_IGNORING(), sSVC_LIGHTRAIL(), sSVC_MOTORCYCLE(), sSVC_PASSENGER(), sSVC_PEDESTRIAN(), sSVC_PRIVATE(), sSVC_PUBLIC_ARMY(), sSVC_PUBLIC_AUTHORITY(), sSVC_PUBLIC_EMERGENCY(), sSVC_PUBLIC_TRANSPORT(), sSVC_RAIL_FAST(), sSVC_RAIL_SLOW(), sSVC_TAXI(), sSVC_TRANSPORT(), sSVC_VIP(), SVC_BICYCLE, SVC_BUS, SVC_CITYRAIL, SVC_DELIVERY, SVC_HOV, SVC_IGNORING, SVC_LIGHTRAIL, SVC_MOTORCYCLE, SVC_PASSENGER, SVC_PEDESTRIAN, SVC_PRIVATE, SVC_PUBLIC_ARMY, SVC_PUBLIC_AUTHORITY, SVC_PUBLIC_EMERGENCY, SVC_PUBLIC_TRANSPORT, SVC_RAIL_FAST, SVC_RAIL_SLOW, SVC_TAXI, SVC_TRANSPORT, SVC_UNKNOWN, and SVC_VIP.
Referenced by NBEdgeCont::applyOptions(), NIXMLEdgesHandler::myStartElement(), SUMOVehicleParserHelper::parseVehicleClass(), and parseVehicleClasses().
00158 { 00159 SUMOVehicleClass ret = SVC_UNKNOWN; 00160 if (name.find(sSVC_PRIVATE)!=std::string::npos) { 00161 ret = (SUMOVehicleClass)((int) ret | (int) SVC_PRIVATE); 00162 } 00163 if (name.find(sSVC_PUBLIC_TRANSPORT)!=std::string::npos) { 00164 ret = (SUMOVehicleClass)((int) ret | (int) SVC_PUBLIC_TRANSPORT); 00165 } 00166 if (name.find(sSVC_PUBLIC_EMERGENCY)!=std::string::npos) { 00167 ret = (SUMOVehicleClass)((int) ret | (int) SVC_PUBLIC_EMERGENCY); 00168 } 00169 if (name.find(sSVC_PUBLIC_AUTHORITY)!=std::string::npos) { 00170 ret = (SUMOVehicleClass)((int) ret | (int) SVC_PUBLIC_AUTHORITY); 00171 } 00172 if (name.find(sSVC_PUBLIC_ARMY)!=std::string::npos) { 00173 ret = (SUMOVehicleClass)((int) ret | (int) SVC_PUBLIC_ARMY); 00174 } 00175 if (name.find(sSVC_VIP)!=std::string::npos) { 00176 ret = (SUMOVehicleClass)((int) ret | (int) SVC_VIP); 00177 } 00178 if (name.find(sSVC_IGNORING)!=std::string::npos) { 00179 ret = (SUMOVehicleClass)((int) ret | (int) SVC_IGNORING); 00180 } 00181 00182 00183 if (name.find(sSVC_PASSENGER)!=std::string::npos) { 00184 ret = (SUMOVehicleClass)((int) ret | (int) SVC_PASSENGER); 00185 } 00186 if (name.find(sSVC_HOV)!=std::string::npos) { 00187 ret = (SUMOVehicleClass)((int) ret | (int) SVC_HOV); 00188 } 00189 if (name.find(sSVC_TAXI)!=std::string::npos) { 00190 ret = (SUMOVehicleClass)((int) ret | (int) SVC_TAXI); 00191 } 00192 if (name.find(sSVC_BUS)!=std::string::npos) { 00193 ret = (SUMOVehicleClass)((int) ret | (int) SVC_BUS); 00194 } 00195 if (name.find(sSVC_DELIVERY)!=std::string::npos) { 00196 ret = (SUMOVehicleClass)((int) ret | (int) SVC_DELIVERY); 00197 } 00198 if (name.find(sSVC_TRANSPORT)!=std::string::npos) { 00199 ret = (SUMOVehicleClass)((int) ret | (int) SVC_TRANSPORT); 00200 } 00201 if (name.find(sSVC_LIGHTRAIL)!=std::string::npos) { 00202 ret = (SUMOVehicleClass)((int) ret | (int) SVC_LIGHTRAIL); 00203 } 00204 if (name.find(sSVC_CITYRAIL)!=std::string::npos) { 00205 ret = (SUMOVehicleClass)((int) ret | (int) SVC_CITYRAIL); 00206 } 00207 if (name.find(sSVC_RAIL_SLOW)!=std::string::npos) { 00208 ret = (SUMOVehicleClass)((int) ret | (int) SVC_RAIL_SLOW); 00209 } 00210 if (name.find(sSVC_RAIL_FAST)!=std::string::npos) { 00211 ret = (SUMOVehicleClass)((int) ret | (int) SVC_RAIL_FAST); 00212 } 00213 if (name.find(sSVC_MOTORCYCLE)!=std::string::npos) { 00214 ret = (SUMOVehicleClass)((int) ret | (int) SVC_MOTORCYCLE); 00215 } 00216 if (name.find(sSVC_BICYCLE)!=std::string::npos) { 00217 ret = (SUMOVehicleClass)((int) ret | (int) SVC_BICYCLE); 00218 } 00219 if (name.find(sSVC_PEDESTRIAN)!=std::string::npos) { 00220 ret = (SUMOVehicleClass)((int) ret | (int) SVC_PEDESTRIAN); 00221 } 00222 00223 return ret; 00224 }
| std::string getVehicleClassName | ( | SUMOVehicleClass | id | ) | throw () |
Returns the class name of the abstract class given by its id.
| [in] | id | The id of the abstract vehicle class |
Definition at line 85 of file SUMOVehicleClass.cpp.
References sSVC_BICYCLE(), sSVC_BUS(), sSVC_CITYRAIL(), sSVC_DELIVERY(), sSVC_HOV(), sSVC_IGNORING(), sSVC_LIGHTRAIL(), sSVC_MOTORCYCLE(), sSVC_PASSENGER(), sSVC_PEDESTRIAN(), sSVC_PRIVATE(), sSVC_PUBLIC_ARMY(), sSVC_PUBLIC_AUTHORITY(), sSVC_PUBLIC_EMERGENCY(), sSVC_PUBLIC_TRANSPORT(), sSVC_RAIL_FAST(), sSVC_RAIL_SLOW(), sSVC_TAXI(), sSVC_TRANSPORT(), sSVC_VIP(), SVC_BICYCLE, SVC_BUS, SVC_CITYRAIL, SVC_DELIVERY, SVC_HOV, SVC_IGNORING, SVC_LIGHTRAIL, SVC_MOTORCYCLE, SVC_PASSENGER, SVC_PEDESTRIAN, SVC_PRIVATE, SVC_PUBLIC_ARMY, SVC_PUBLIC_AUTHORITY, SVC_PUBLIC_EMERGENCY, SVC_PUBLIC_TRANSPORT, SVC_RAIL_FAST, SVC_RAIL_SLOW, SVC_TAXI, SVC_TRANSPORT, and SVC_VIP.
Referenced by TraCIServerAPI_VehicleType::processGet(), TraCIServerAPI_Lane::processGet(), SUMOVTypeParameter::write(), NBEdge::writeLane(), and NBEdge::writeLanesPlain().
00085 { 00086 std::string ret; 00087 if ((id&SVC_PRIVATE)!=0) { 00088 ret += ("|" + sSVC_PRIVATE); 00089 } 00090 if ((id&SVC_PUBLIC_TRANSPORT)!=0) { 00091 ret += ("|" + sSVC_PUBLIC_TRANSPORT); 00092 } 00093 if ((id&SVC_PUBLIC_EMERGENCY)!=0) { 00094 ret += ("|" + sSVC_PUBLIC_EMERGENCY); 00095 } 00096 if ((id&SVC_PUBLIC_AUTHORITY)!=0) { 00097 ret += ("|" + sSVC_PUBLIC_AUTHORITY); 00098 } 00099 if ((id&SVC_PUBLIC_ARMY)!=0) { 00100 ret += ("|" + sSVC_PUBLIC_ARMY); 00101 } 00102 if ((id&SVC_VIP)!=0) { 00103 ret += ("|" + sSVC_VIP); 00104 } 00105 if ((id&SVC_IGNORING)!=0) { 00106 ret += ("|" + sSVC_IGNORING); 00107 } 00108 00109 if ((id&SVC_PASSENGER)!=0) { 00110 ret += ("|" + sSVC_PASSENGER); 00111 } 00112 if ((id&SVC_HOV)!=0) { 00113 ret += ("|" + sSVC_HOV); 00114 } 00115 if ((id&SVC_TAXI)!=0) { 00116 ret += ("|" + sSVC_TAXI); 00117 } 00118 if ((id&SVC_BUS)!=0) { 00119 ret += ("|" + sSVC_BUS); 00120 } 00121 if ((id&SVC_DELIVERY)!=0) { 00122 ret += ("|" + sSVC_DELIVERY); 00123 } 00124 if ((id&SVC_TRANSPORT)!=0) { 00125 ret += ("|" + sSVC_TRANSPORT); 00126 } 00127 if ((id&SVC_LIGHTRAIL)!=0) { 00128 ret += ("|" + sSVC_LIGHTRAIL); 00129 } 00130 if ((id&SVC_CITYRAIL)!=0) { 00131 ret += ("|" + sSVC_CITYRAIL); 00132 } 00133 if ((id&SVC_RAIL_SLOW)!=0) { 00134 ret += ("|" + sSVC_RAIL_SLOW); 00135 } 00136 if ((id&SVC_RAIL_FAST)!=0) { 00137 ret += ("|" + sSVC_RAIL_FAST); 00138 } 00139 if ((id&SVC_MOTORCYCLE)!=0) { 00140 ret += ("|" + sSVC_MOTORCYCLE); 00141 } 00142 if ((id&SVC_BICYCLE)!=0) { 00143 ret += ("|" + sSVC_BICYCLE); 00144 } 00145 if ((id&SVC_PEDESTRIAN)!=0) { 00146 ret += ("|" + sSVC_PEDESTRIAN); 00147 } 00148 00149 if (ret.length()>0) { 00150 return ret.substr(1); 00151 } else { 00152 return ret; 00153 } 00154 }
| SUMOEmissionClass getVehicleEmissionTypeID | ( | const std::string & | name | ) | throw (ProcessError) |
Returns the class id of the emission class given by its name.
| [in] | name | The name of the emission class |
Definition at line 333 of file SUMOVehicleClass.cpp.
References TplConvert< E >::_2int(), SVE_HDV_12_1, SVE_HDV_3_1, SVE_HDV_6_1, SVE_P_LDV_14_1, SVE_P_LDV_7_1, SVE_UNKNOWN, and SVE_ZERO_EMISSIONS.
Referenced by SUMOVehicleParserHelper::parseEmissionClass().
00333 { 00334 try { 00335 if (name=="") { 00336 return SVE_UNKNOWN; 00337 } else if (name=="zero") { 00338 return SVE_ZERO_EMISSIONS; 00339 } else if (name.find("HDV_3_")==0) { 00340 return (SUMOEmissionClass)(SVE_HDV_3_1 - 1 + TplConvert<char>::_2int(name.substr(name.rfind("_")+1).c_str())); 00341 } else if (name.find("HDV_6_")==0) { 00342 return (SUMOEmissionClass)(SVE_HDV_6_1 - 1 + TplConvert<char>::_2int(name.substr(name.rfind("_")+1).c_str())); 00343 } else if (name.find("HDV_12_")==0) { 00344 return (SUMOEmissionClass)(SVE_HDV_12_1 - 1 + TplConvert<char>::_2int(name.substr(name.rfind("_")+1).c_str())); 00345 } else if (name.find("P_7_")==0) { 00346 return (SUMOEmissionClass)(SVE_P_LDV_7_1 - 1 + TplConvert<char>::_2int(name.substr(name.rfind("_")+1).c_str())); 00347 } else if (name.find("P_14_")==0) { 00348 return (SUMOEmissionClass)(SVE_P_LDV_14_1 - 1 + TplConvert<char>::_2int(name.substr(name.rfind("_")+1).c_str())); 00349 } 00350 } catch (NumberFormatException &) { 00351 throw ProcessError("Unknown emission type '" + name + "'."); 00352 } 00353 return SVE_UNKNOWN; 00354 }
| std::string getVehicleEmissionTypeName | ( | SUMOEmissionClass | id | ) | throw () |
Returns the class name of the emission class given by its id.
| [in] | id | The id of the emission class |
Definition at line 358 of file SUMOVehicleClass.cpp.
References SVE_ZERO_EMISSIONS, and toString().
Referenced by TraCIServerAPI_VehicleType::processGet(), and SUMOVTypeParameter::write().
00358 { 00359 if (id==SVE_ZERO_EMISSIONS) { 00360 return "zero"; 00361 } 00362 if (id<0) { 00363 return ""; 00364 } else if (id<3) { 00365 return "HDV_3_" + toString(int(id)); 00366 } else if (id<3+6) { 00367 return "HDV_6_" + toString(int(id-3)); 00368 } else if (id<3+6+12) { 00369 return "HDV_12_" + toString(int(id-3-6)); 00370 } else if (id<3+6+12+7) { 00371 return "P_7_" + toString(int(id-3-6-12)); 00372 } else if (id<3+6+12+7+14) { 00373 return "P_14_" + toString(int(id-3-6-12-7)); 00374 } 00375 return ""; 00376 }
| SUMOVehicleShape getVehicleShapeID | ( | const std::string & | name | ) | throw () |
Returns the class id of the shape class given by its name.
| [in] | name | The name of the shape class |
!!throw InvalidArgument("Unknown vehicle shape '" + name + "' occured.");
Definition at line 318 of file SUMOVehicleClass.cpp.
References gVehicleShapeName2ID, and SVS_UNKNOWN.
Referenced by SUMOVehicleParserHelper::parseGuiShape().
00318 { 00319 if (name=="") { 00320 return SVS_UNKNOWN; 00321 } 00322 if (gVehicleShapeName2ID.find(name)!=gVehicleShapeName2ID.end()) { 00323 return gVehicleShapeName2ID[name]; 00324 } 00325 return SVS_UNKNOWN; 00327 }
| std::string getVehicleShapeName | ( | SUMOVehicleShape | id | ) | throw () |
Returns the class name of the shape class given by its id.
| [in] | id | The id of the shape class |
Definition at line 309 of file SUMOVehicleClass.cpp.
References gVehicleShapeID2Name, and SVS_UNKNOWN.
Referenced by TraCIServerAPI_VehicleType::processGet(), and SUMOVTypeParameter::write().
00309 { 00310 if (id==SVS_UNKNOWN) { 00311 return ""; 00312 } 00313 return gVehicleShapeID2Name[id]; 00314 }
| void initGuiShapeNames | ( | ) | throw () |
Definition at line 281 of file SUMOVehicleClass.cpp.
References addToShapeNames(), SVS_BICYCLE, SVS_BUS, SVS_BUS_CITY, SVS_BUS_CITY_FLEXIBLE, SVS_BUS_OVERLAND, SVS_DELIVERY, SVS_E_VEHICLE, SVS_MOTORCYCLE, SVS_PASSENGER, SVS_PASSENGER_HATCHBACK, SVS_PASSENGER_SEDAN, SVS_PASSENGER_VAN, SVS_PASSENGER_WAGON, SVS_PEDESTRIAN, SVS_RAIL, SVS_RAIL_CARGO, SVS_RAIL_CITY, SVS_RAIL_FAST, SVS_RAIL_LIGHT, SVS_RAIL_SLOW, SVS_TRANSPORT, SVS_TRANSPORT_1TRAILER, and SVS_TRANSPORT_SEMITRAILER.
Referenced by main().
00281 { 00282 addToShapeNames(SVS_PEDESTRIAN, "pedestrian"); 00283 addToShapeNames(SVS_BICYCLE, "bicycle"); 00284 addToShapeNames(SVS_MOTORCYCLE, "motorcycle"); 00285 addToShapeNames(SVS_PASSENGER, "passenger"); 00286 addToShapeNames(SVS_PASSENGER_SEDAN, "passenger/sedan"); 00287 addToShapeNames(SVS_PASSENGER_HATCHBACK, "passenger/hatchback"); 00288 addToShapeNames(SVS_PASSENGER_WAGON, "passenger/wagon"); 00289 addToShapeNames(SVS_PASSENGER_VAN, "passenger/van"); 00290 addToShapeNames(SVS_DELIVERY, "delivery"); 00291 addToShapeNames(SVS_TRANSPORT, "transport"); 00292 addToShapeNames(SVS_TRANSPORT_SEMITRAILER, "transport/semitrailer"); 00293 addToShapeNames(SVS_TRANSPORT_1TRAILER, "transport/trailer"); 00294 addToShapeNames(SVS_BUS, "bus"); 00295 addToShapeNames(SVS_BUS_CITY, "bus/city"); 00296 addToShapeNames(SVS_BUS_CITY_FLEXIBLE, "bus/flexible"); 00297 addToShapeNames(SVS_BUS_OVERLAND, "bus/overland"); 00298 addToShapeNames(SVS_RAIL, "rail"); 00299 addToShapeNames(SVS_RAIL_LIGHT, "rail/light"); 00300 addToShapeNames(SVS_RAIL_CITY, "rail/city"); 00301 addToShapeNames(SVS_RAIL_SLOW, "rail/slow"); 00302 addToShapeNames(SVS_RAIL_FAST, "rail/fast"); 00303 addToShapeNames(SVS_RAIL_CARGO, "rail/cargo"); 00304 addToShapeNames(SVS_E_VEHICLE, "evehicle"); 00305 }
| void parseVehicleClasses | ( | const std::vector< std::string > & | classesS, | |
| std::vector< SUMOVehicleClass > & | classes | |||
| ) | throw () |
Parses the given vector of class names into their enum-representation.
| [in] | classesS | The names vector to parse |
| [out] | classes | The parsed classes |
Definition at line 261 of file SUMOVehicleClass.cpp.
References getVehicleClassID().
00262 { 00263 for (std::vector<std::string>::const_iterator i=classesS.begin(); i!=classesS.end(); ++i) { 00264 classes.push_back(getVehicleClassID(*i)); 00265 } 00266 }
| void parseVehicleClasses | ( | const std::string & | classesS, | |
| const std::string & | allowedS, | |||
| const std::string & | disallowedS, | |||
| std::vector< SUMOVehicleClass > & | allowed, | |||
| std::vector< SUMOVehicleClass > & | disallowed, | |||
| bool & | warnedAboutDeprecatedVClass | |||
| ) | throw () |
Parses the given definition of allowed/disallowed vehicle classes into the given containers.
| [in] | classesS | Definition which classes are (dis-)allowed (old "vclasses" style) |
| [in] | allowedS | Definition which classes are allowed |
| [in] | disallowedS | Definition which classes are not allowed |
| [out] | allowed | The vector of allowed vehicle classes to fill |
| [out] | disallowed | The vector of disallowed vehicle classes to fill |
| [in,out] | warnedAboutDeprecatedVClass | Whether a warning about having used the deprecated definition was printed once |
Definition at line 228 of file SUMOVehicleClass.cpp.
References getVehicleClassID(), MsgHandler::getWarningInstance(), StringTokenizer::hasNext(), MsgHandler::inform(), and StringTokenizer::next().
Referenced by NLHandler::addLane(), RONetHandler::parseLane(), TraCIServerAPI_Lane::processSet(), and TraCIServerAPI_Edge::processSet().
00233 { 00234 if (classesS.length()!=0) { 00235 if (!warnedAboutDeprecatedVClass) { 00236 MsgHandler::getWarningInstance()->inform("The vclasses attribute is deprecated. Please rebuilt your network."); 00237 warnedAboutDeprecatedVClass = true; 00238 } 00239 StringTokenizer st(classesS, ";"); 00240 while (st.hasNext()) { 00241 std::string next = st.next(); 00242 if (next[0]=='-') { 00243 disallowed.push_back(getVehicleClassID(next.substr(1))); 00244 } else { 00245 allowed.push_back(getVehicleClassID(next)); 00246 } 00247 } 00248 } 00249 StringTokenizer sta(allowedS, " "); 00250 while (sta.hasNext()) { 00251 allowed.push_back(getVehicleClassID(sta.next())); 00252 } 00253 StringTokenizer std(disallowedS, " "); 00254 while (std.hasNext()) { 00255 disallowed.push_back(getVehicleClassID(std.next())); 00256 } 00257 }
| const std::string CF_MODEL_BKERNER = CF_MODEL_PREFIX + "BKerner" |
| const char* const CF_MODEL_BKERNER_STR = CF_MODEL_BKERNER.c_str() |
Definition at line 332 of file SUMOVehicleClass.h.
| const std::string CF_MODEL_IDM = CF_MODEL_PREFIX + "IDM" |
| const char* const CF_MODEL_IDM_STR = CF_MODEL_IDM.c_str() |
Definition at line 324 of file SUMOVehicleClass.h.
| const std::string CF_MODEL_KRAUSS = CF_MODEL_PREFIX + "Krauss" |
| const std::string CF_MODEL_KRAUSS_ORIG1 = CF_MODEL_PREFIX + "KraussOrig1" |
| const char* const CF_MODEL_KRAUSS_ORIG1_STR = CF_MODEL_KRAUSS_ORIG1.c_str() |
Definition at line 328 of file SUMOVehicleClass.h.
| const char* const CF_MODEL_KRAUSS_STR = CF_MODEL_KRAUSS.c_str() |
Definition at line 326 of file SUMOVehicleClass.h.
| const std::string CF_MODEL_PREFIX = "carFollowing-" |
Definition at line 322 of file SUMOVehicleClass.h.
| const std::string CF_MODEL_PWAGNER2009 = CF_MODEL_PREFIX + "PWagner2009" |
| const char* const CF_MODEL_PWAGNER2009_STR = CF_MODEL_PWAGNER2009.c_str() |
Definition at line 330 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_ACCEL = (SUMOReal) 2.6 |
| const SUMOVehicleClass DEFAULT_VEH_CLASS = SVC_UNKNOWN |
| const SUMOReal DEFAULT_VEH_DECEL = (SUMOReal) 4.5 |
| const std::string DEFAULT_VEH_FOLLOW_MODEL = "Krauss" |
Definition at line 350 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_GUIOFFSET = (SUMOReal) 2.5 |
Definition at line 349 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_GUIWIDTH = (SUMOReal) 2. |
Definition at line 348 of file SUMOVehicleClass.h.
| const std::string DEFAULT_VEH_LANE_CHANGE_MODEL = "dkrajzew2008" |
Definition at line 351 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_LENGTH = (SUMOReal) 7.5 |
Definition at line 342 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_MAXSPEED = (SUMOReal) 70. |
Definition at line 338 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_PROB = (SUMOReal) 1. |
| const SUMOVehicleShape DEFAULT_VEH_SHAPE = SVS_UNKNOWN |
Definition at line 352 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_SIGMA = (SUMOReal) 0.5 |
| const SUMOReal DEFAULT_VEH_SPEEDDEV = (SUMOReal) 0. |
Definition at line 347 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_SPEEDFACTOR = (SUMOReal) 1. |
Definition at line 346 of file SUMOVehicleClass.h.
| const SUMOReal DEFAULT_VEH_TAU = (SUMOReal) 1. |
| const std::string DEFAULT_VTYPE_ID = "DEFAULT_VEHTYPE" |
Definition at line 337 of file SUMOVehicleClass.h.
Referenced by MSVehicleControl::checkVType(), MSVehicleControl::getVType(), and MSVehicleControl::MSVehicleControl().
1.5.6