40 #ifdef CHECK_MEMORY_LEAKS
42 #endif // CHECK_MEMORY_LEAKS
72 throw ProcessError(
"Invalid speed code (edge '" +
id +
"').");
75 throw ProcessError(
"Non-numerical value for an edge's speed type occured (edge '" +
id +
"').");
86 }
else if (nolanes / 10 > 0) {
89 switch (nolanes % 10) {
94 if (speed > 78.0 / 3.6) {
101 throw ProcessError(
"Invalid lane number (edge '" +
id +
"').");
105 throw ProcessError(
"Non-numerical value for an edge's lane number occured (edge '" +
id +
"'.");
112 std::string classS =
"0000000000" + oclassS;
113 classS = classS.substr(classS.length() - 10);
115 if (classS[0] ==
'1') {
122 if (classS[1] ==
'1') {
126 if (classS[2] ==
'1') {
131 if (classS[3] ==
'1') {
135 if (classS[4] ==
'1') {
139 if (classS[5] ==
'1') {
144 if (classS[6] ==
'1') {
148 if (classS[7] ==
'1') {
153 if (classS[8] ==
'1') {
157 if (classS[9] ==
'1') {
165 std::string classS =
"0000000000" + oclassS;
166 classS = classS.substr(classS.length() - 12);
168 if (classS[0] ==
'1') {
175 if (classS[1] ==
'1') {
179 if (classS[2] ==
'1') {
183 if (classS[3] ==
'1') {
188 if (classS[4] ==
'1') {
192 if (classS[5] ==
'1') {
196 if (classS[6] ==
'1') {
201 if (classS[7] ==
'1') {
205 if (classS[8] ==
'1') {
210 if (classS[9] ==
'1') {
214 if (classS[10] ==
'1') {
218 if (classS[11] ==
'1') {
The representation of a single edge during network building.
vehicle is a small delivery vehicle
static void addVehicleClasses(NBEdge &e, const std::string &classS)
Adds vehicle classes parsing the given list of allowed vehicles.
void setPermissions(SVCPermissions permissions, int lane=-1)
set allowed/disallowed classes for the given lane or for all lanes if -1 is given ...
const SVCPermissions SVCAll
vehicle is a large transport vehicle
vehicle is a passenger car (a "normal" car)
static unsigned int getLaneNumber(const std::string &id, const std::string &laneNoS, SUMOReal speed)
Returns the lane number evaluating the given Navteq-description.
static SUMOReal getSpeed(const std::string &id, const std::string &speedClassS)
Returns the speed evaluating the given Navteq-description.
static void addVehicleClassesV6(NBEdge &e, const std::string &classS)
same as addVehicleClasses but for version 6+
static int _2int(const E *const data)
vehicle is a large transport vehicle
void allowVehicleClass(int lane, SUMOVehicleClass vclass)
set allowed class for the given lane or for all lanes if -1 is given
public emergency vehicles