Eclipse SUMO - Simulation of Urban MObility
NIVissimSingleTypeParser_Auswertungsdefinition.cpp
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 // Copyright (C) 2001-2024 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials are made available under the
5 // terms of the Eclipse Public License 2.0 which is available at
6 // https://www.eclipse.org/legal/epl-2.0/
7 // This Source Code may also be made available under the following Secondary
8 // Licenses when the conditions for such availability set forth in the Eclipse
9 // Public License 2.0 are satisfied: GNU General Public License, version 2
10 // or later which is available at
11 // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 /****************************************************************************/
19 //
20 /****************************************************************************/
21 #include <config.h>
22 
23 #include <iostream>
28 
29 
30 // ===========================================================================
31 // method definitions
32 // ===========================================================================
34  : NIImporter_Vissim::VissimSingleTypeParser(parent) {}
35 
36 
38 
39 
40 bool
42  std::string id;
43  from >> id; // "typ"
44 
45  if (id == "DATENBANK") { // !!! unverified
46  return true;
47  }
48 
49  std::string type = myRead(from);
50  if (type == "abfluss") {
51  while (type != "signalgruppe") {
52  type = myRead(from);
53  }
54  while (type != "DATAEND") {
55  type = readEndSecure(from, "messung");
56  }
57  } else if (type == "vbv") {} else if (type == "dichte") {} else if (type == "emissionen") {} else if (type == "fzprot") {} else if (type == "spwprot") {} else if (type == "segment") {
58  while (type != "konfdatei") {
59  type = myRead(from);
60  }
61  } else if (type == "wegeausw") {} else if (type == "knoten") {} else if (type == "konvergenz") {
62  while (type != "zeit") {
63  type = myRead(from);
64  }
65  }
66  return true;
67 }
68 
69 
70 /****************************************************************************/
std::string readEndSecure(std::istream &from, const std::string &excl="")
as myRead, but returns "DATAEND" when the current field has ended
std::string myRead(std::istream &from)
reads from the stream and returns the lower case version of the read value
Importer for networks stored in Vissim format.
bool parse(std::istream &from)
Parses the data type from the given stream.