#include <NIOptionsIO.h>
Definition at line 40 of file NIOptionsIO.h.
Static Public Member Functions | |
| static bool | checkOptions () |
| Checks set options from the OptionsCont-singleton for being valid. | |
| static void | fillOptions () |
| Inserts options used by the network importer and network building modules. | |
| bool NIOptionsIO::checkOptions | ( | ) | [static] |
Checks set options from the OptionsCont-singleton for being valid.
Definition at line 216 of file NIOptionsIO.cpp.
References OptionsCont::checkDependingSuboptions(), OptionsCont::getBool(), OptionsCont::getOptions(), OptionsCont::getString(), OptionsCont::isDefault(), OptionsCont::isSet(), and OptionsCont::set().
Referenced by main().
00216 { 00217 OptionsCont &oc = OptionsCont::getOptions(); 00218 bool ok = oc.checkDependingSuboptions("shapefile", "shapefile."); 00219 ok &= oc.checkDependingSuboptions("visum-file", "visum."); 00220 ok &= oc.checkDependingSuboptions("vissim-file", "vissim."); 00221 #ifdef HAVE_PROJ 00222 unsigned numProjections = oc.getBool("proj.simple") + oc.getBool("proj.utm") + oc.getBool("proj.dhdn") + (oc.getString("proj").length() > 1); 00223 if ((oc.isSet("osm-files") || oc.isSet("dlr-navteq")) && numProjections == 0) { 00224 oc.set("proj.utm", true); 00225 } 00226 if (oc.isSet("dlr-navteq") && oc.isDefault("proj.shift")) { 00227 oc.set("proj.shift", std::string("5")); 00228 } 00229 #endif 00230 return ok; 00231 }
| void NIOptionsIO::fillOptions | ( | ) | [static] |
Inserts options used by the network importer and network building modules.
Calls "NBNetBuilder::insertNetBuildOptions" for inserting network building options.
Definition at line 55 of file NIOptionsIO.cpp.
References OptionsCont::addCallExample(), SystemFrame::addConfigurationOptions(), OptionsCont::addDescription(), OptionsCont::addOptionSubTopic(), GeoConvHelper::addProjectionOptions(), SystemFrame::addReportOptions(), OptionsCont::addSynonyme(), OptionsCont::doRegister(), OptionsCont::getOptions(), NBNetBuilder::insertNetBuildOptions(), RandHelper::insertRandOptions(), and SUMOReal.
Referenced by main().
00055 { 00056 OptionsCont &oc = OptionsCont::getOptions(); 00057 oc.addCallExample("-c <CONFIGURATION>"); 00058 oc.addCallExample("-n ./nodes.xml -e ./edges.xml -v -t ./owntypes.xml"); 00059 00060 00061 // insert options sub-topics 00062 SystemFrame::addConfigurationOptions(oc); // fill this subtopic, too 00063 oc.addOptionSubTopic("Input"); 00064 oc.addOptionSubTopic("Output"); 00065 GeoConvHelper::addProjectionOptions(oc); 00066 oc.addOptionSubTopic("TLS Building"); 00067 oc.addOptionSubTopic("Ramp Guessing"); 00068 oc.addOptionSubTopic("Edge Removal"); 00069 oc.addOptionSubTopic("Unregulated Nodes"); 00070 oc.addOptionSubTopic("Processing"); 00071 oc.addOptionSubTopic("Building Defaults"); 00072 SystemFrame::addReportOptions(oc); // fill this subtopic, too 00073 00074 // register options 00075 // register I/O options 00076 oc.doRegister("sumo-net", 's', new Option_FileName()); 00077 oc.addDescription("sumo-net", "Input", "Read SUMO-net from FILE"); 00078 00079 oc.doRegister("xml-node-files", 'n', new Option_FileName()); 00080 oc.addSynonyme("xml-node-files", "xml-nodes"); 00081 oc.addDescription("xml-node-files", "Input", "Read XML-node defs from FILE"); 00082 00083 oc.doRegister("xml-edge-files", 'e', new Option_FileName()); 00084 oc.addSynonyme("xml-edge-files", "xml-edges"); 00085 oc.addDescription("xml-edge-files", "Input", "Read XML-edge defs from FILE"); 00086 00087 oc.doRegister("xml-connection-files", 'x', new Option_FileName()); 00088 oc.addSynonyme("xml-connection-files", "xml-connections"); 00089 oc.addDescription("xml-connection-files", "Input", "Read XML-connection defs from FILE"); 00090 00091 oc.doRegister("xml-type-files", 't', new Option_FileName()); 00092 oc.addSynonyme("xml-type-files", "xml-types"); 00093 oc.addDescription("xml-type-files", "Input", "Read XML-type defs from FILE"); 00094 00095 oc.doRegister("shapefile", new Option_FileName()); 00096 oc.addSynonyme("shapefile", "arcview"); 00097 oc.addSynonyme("shapefile", "tiger"); 00098 oc.addDescription("shapefile", "Input", "Read shapefiles (ArcView, Tiger, ...) from files starting with 'FILE'"); 00099 00100 oc.doRegister("dlr-navteq", new Option_FileName()); 00101 oc.addSynonyme("dlr-navteq", "elmar2"); 00102 oc.addDescription("dlr-navteq", "Input", "Read converted Navteq GDF data (unsplitted Elmar-network) from path 'FILE'"); 00103 00104 oc.doRegister("osm-files", new Option_FileName()); 00105 oc.addSynonyme("osm-files", "osm"); 00106 oc.addDescription("osm-files", "Input", "Read OSM-network from path 'FILE(s)'"); 00107 00108 oc.doRegister("opendrive", new Option_FileName()); 00109 oc.addDescription("opendrive", "Input", "Read openDrive-network from FILE"); 00110 00111 oc.doRegister("visum-file", new Option_FileName()); 00112 oc.addSynonyme("visum-file", "visum"); 00113 oc.addDescription("visum-file", "Input", "Read VISUM-net from FILE"); 00114 00115 oc.doRegister("vissim-file", new Option_FileName()); 00116 oc.addSynonyme("vissim-file", "vissim"); 00117 oc.addDescription("vissim-file", "Input", "Read VISSIM-net from FILE"); 00118 00119 oc.doRegister("robocup-net", new Option_FileName()); 00120 oc.addSynonyme("robocup-net", "robocup"); 00121 oc.addDescription("robocup-net", "Input", "Read RoboCup-net from DIR"); 00122 00123 00124 // register processing options 00125 oc.doRegister("dismiss-loading-errors", new Option_Bool(false)); // !!! describe, document 00126 oc.addDescription("dismiss-loading-errors", "Processing", "Continue on broken input"); 00127 00128 oc.doRegister("capacity-norm", new Option_Float((SUMOReal) 1800)); 00129 oc.addDescription("capacity-norm", "Processing", "The factor for flow to no. lanes conv"); 00130 00131 oc.doRegister("speed-in-kmh", new Option_Bool(false)); 00132 oc.addDescription("speed-in-kmh", "Processing", "vmax is parsed as given in km/h (some)"); 00133 00134 00135 oc.doRegister("xml.keep-shape", new Option_Bool(false)); 00136 oc.addDescription("xml.keep-shape", "Processing", "No node positions are added to the edge shape"); 00137 00138 00139 oc.doRegister("shapefile.street-id", new Option_String()); 00140 oc.addSynonyme("shapefile.street-id", "arcview.street-id"); 00141 oc.addDescription("shapefile.street-id", "Processing", "Read edge ids from column STR"); 00142 00143 oc.doRegister("shapefile.from-id", new Option_String()); 00144 oc.addSynonyme("shapefile.from-id", "arcview.from-id"); 00145 oc.addDescription("shapefile.from-id", "Processing", "Read from-node ids from column STR"); 00146 00147 oc.doRegister("shapefile.to-id", new Option_String()); 00148 oc.addSynonyme("shapefile.to-id", "arcview.to-id"); 00149 oc.addDescription("shapefile.to-id", "Processing", "Read to-node ids from column STR"); 00150 00151 oc.doRegister("shapefile.type-id", new Option_String()); 00152 oc.addSynonyme("shapefile.type-id", "arcview.type-id"); 00153 oc.addDescription("shapefile.type-id", "Processing", "Read type ids from column STR"); 00154 00155 oc.doRegister("shapefile.use-defaults-on-failure", new Option_Bool(false)); 00156 oc.addSynonyme("shapefile.use-defaults-on-failure", "arcview.use-defaults-on-failure"); 00157 oc.addDescription("shapefile.use-defaults-on-failure", "Processing", "Uses edge type defaults on problems"); 00158 00159 oc.doRegister("shapefile.all-bidi", new Option_Bool(false)); 00160 oc.addSynonyme("shapefile.all-bidi", "arcview.all-bidi"); 00161 oc.addDescription("shapefile.all-bidi", "Processing", "Insert edges in both directions"); 00162 00163 oc.doRegister("shapefile.utm", new Option_Integer(32)); 00164 oc.addSynonyme("shapefile.utm", "arcview.utm"); 00165 oc.addDescription("shapefile.utm", "Processing", "Use INT as UTM zone"); 00166 00167 oc.doRegister("shapefile.guess-projection", new Option_Bool(false)); 00168 oc.addSynonyme("shapefile.guess-projection", "arcview.guess-projection"); 00169 oc.addDescription("shapefile.guess-projection", "Processing", "Guess the proper projection"); 00170 00171 // register further vissim-options 00172 oc.doRegister("vissim.offset", new Option_Float(5.0f)); 00173 oc.addDescription("vissim.offset", "Processing", "Structure join offset"); 00174 00175 oc.doRegister("vissim.default-speed", new Option_Float(50.0f)); 00176 oc.addDescription("vissim.default-speed", "Processing", "Use FLOAT as default speed"); 00177 00178 oc.doRegister("vissim.speed-norm", new Option_Float(1.0f)); 00179 oc.addDescription("vissim.speed-norm", "Processing", "Factor for edge velocity"); 00180 00181 oc.doRegister("vissim.report-unset-speeds", new Option_Bool(false)); 00182 oc.addDescription("vissim.report-unset-speeds", "Processing", "Writes lanes without an explicite speed set."); 00183 00184 // register further visum-options 00185 oc.doRegister("visum.use-type-priority", new Option_Bool(false)); 00186 oc.addDescription("visum.use-type-priority", "Processing", "Uses priorities from types"); 00187 00188 oc.doRegister("visum.use-type-laneno", new Option_Bool(false)); 00189 oc.addDescription("visum.use-type-laneno", "Processing", "Uses lane numbers from types"); 00190 00191 oc.doRegister("visum.use-type-speed", new Option_Bool(false)); 00192 oc.addDescription("visum.use-type-speed", "Processing", "Uses speeds from types"); 00193 00194 oc.doRegister("visum.connector-speeds", new Option_Float(100.)); 00195 oc.addDescription("visum.connector-speeds", "Processing", "Sets connector speed"); 00196 00197 oc.doRegister("visum.connector-laneno", new Option_Integer(3)); 00198 oc.addDescription("visum.connector-laneno", "Processing", "Sets connector lane number"); 00199 00200 oc.doRegister("visum.no-connectors", new Option_Bool(false)); 00201 oc.addDescription("visum.no-connectors", "Processing", "Excludes connectors"); 00202 00203 oc.doRegister("visum.recompute-laneno", new Option_Bool(false)); 00204 oc.addDescription("visum.recompute-laneno", "Processing", "Excludes connectors"); 00205 00206 00207 // add netbuilding options 00208 NBNetBuilder::insertNetBuildOptions(oc); 00209 00210 // add rand options 00211 RandHelper::insertRandOptions(); 00212 }
1.5.6