35 #include "../NIImporter_Vissim.h"
36 #include "../tempstructs/NIVissimConnection.h"
39 #ifdef CHECK_MEMORY_LEAKS
41 #endif // CHECK_MEMORY_LEAKS
61 while (tag !=
"von") {
71 while (tag !=
"nach") {
72 std::string x =
myRead(from);
73 std::string y =
myRead(from);
94 zuschlag1 = zuschlag2 = 0;
98 while (tag !=
"fahrzeugklassen" && tag !=
"sperrung" && tag !=
"auswertung" && tag !=
"DATAEND") {
99 if (tag ==
"rechts") {
101 }
else if (tag ==
"links") {
103 }
else if (tag ==
"alle") {
105 }
else if (tag ==
"dxnothalt") {
107 }
else if (tag ==
"dxeinordnen") {
109 }
else if (tag ==
"segment") {
113 if (tag ==
"zuschlag") {
116 if (tag ==
"zuschlag") {
125 std::vector<int> assignedVehicles;
126 if (tag ==
"fahrzeugklassen") {
128 while (tag !=
"DATAEND" && tag !=
"sperrung" && tag !=
"auswertung") {
130 assignedVehicles.push_back(classes);
136 if (tag !=
"DATAEND") {
140 if (tag ==
"keinspurwechsel") {
141 while (tag !=
"DATAEND") {
144 }
else if (tag ==
"spur") {
150 std::vector<int> assignedVehicles;
152 if (tag ==
"fahrzeugklassen") {
155 while (tag !=
"DATAEND" && tag !=
"spur" && tag !=
"keinspurwechsel") {
157 assignedVehicles.push_back(classes);
164 }
while (tag !=
"DATAEND");
167 direction, dxnothalt, dxeinordnen, zuschlag1, zuschlag2, seglength,
168 assignedVehicles, clv);
static SUMOReal _2SUMOReal(const E *const data)
std::string myRead(std::istream &from)
reads from the stream and returns the lower case version of the read value
std::string readEndSecure(std::istream &from, const std::string &excl="")
as myRead, but returns "DATAEND" when the current field has ended
std::vector< NIVissimClosedLaneDef * > NIVissimClosedLanesVector
Importer for networks stored in Vissim format.
NIVissimExtendedEdgePoint readExtEdgePointDef(std::istream &from)
A point in 2D or 3D with translation and scaling methods.
~NIVissimSingleTypeParser_Verbindungsdefinition()
Destructor.
bool parse(std::istream &from)
Parses the data type from the given stream.
std::string readName(std::istream &from)
Reads the structures name We cannot use the "<<" operator, as names may contain more than one word wh...
NIVissimSingleTypeParser_Verbindungsdefinition(NIImporter_Vissim &parent)
Constructor.
static int _2int(const E *const data)
static bool dictionary(int id, const std::string &name, const NIVissimExtendedEdgePoint &from_def, const NIVissimExtendedEdgePoint &to_def, const PositionVector &geom, Direction direction, SUMOReal dxnothalt, SUMOReal dxeinordnen, SUMOReal zuschlag1, SUMOReal zuschlag2, SUMOReal seglength, const std::vector< int > &assignedVehicles, const NIVissimClosedLanesVector &clv)
void push_back_noDoublePos(const Position &p)
std::string overrideOptionalLabel(std::istream &from, const std::string &tag="")
overrides the optional label definition; returns the next tag as done by readEndSecure ...