35 #include "../NIImporter_Vissim.h" 36 #include "../tempstructs/NIVissimEdge.h" 37 #include "../tempstructs/NIVissimClosedLaneDef.h" 38 #include "../tempstructs/NIVissimClosedLanesVector.h" 61 std::string name, label, type;
67 }
else if (tag ==
"typ") {
69 }
else if (tag ==
"laenge") {
79 double zuschlag1, zuschlag2;
80 zuschlag1 = zuschlag2 = 0;
81 while (tag !=
"von") {
83 if (tag ==
"zuschlag") {
86 if (tag ==
"zuschlag") {
93 while (tag !=
"nach") {
106 while (tag !=
"DATAEND") {
107 if (tag ==
"keinspurwechsel") {
108 while (tag !=
"DATAEND") {
111 }
else if (tag ==
"spur") {
116 std::vector<int> assignedVehicles;
119 while (tag !=
"DATAEND" && tag !=
"spur" && tag !=
"keinspurwechsel") {
121 assignedVehicles.push_back(classes);
132 zuschlag1, zuschlag2, length, geom, clv);
NIVissimSingleTypeParser_Streckendefinition(NIImporter_Vissim &parent)
Constructor.
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.
~NIVissimSingleTypeParser_Streckendefinition()
Destructor.
A temporary storage for edges imported from Vissim.
Position getPosition(std::istream &from)
returns the 2d-position saved as next within the stream
static bool dictionary(int id, const std::string &name, const std::string &type, int noLanes, double zuschlag1, double zuschlag2, double length, const PositionVector &geom, const NIVissimClosedLanesVector &clv)
Adds the described item to the dictionary Builds the edge first.
std::string readName(std::istream &from)
Reads the structures name We cannot use the "<<" operator, as names may contain more than one word wh...
static int _2int(const E *const data)
converts a char-type array into the integer value described by it
bool parse(std::istream &from)
Parses the data type from the given stream.
static double _2double(const E *const data)
converts a char-type array into the double value described by it
void push_back_noDoublePos(const Position &p)
insert in back a non double position
std::string overrideOptionalLabel(std::istream &from, const std::string &tag="")
overrides the optional label definition; returns the next tag as done by readEndSecure ...