NIOptionsIO Class Reference

#include <NIOptionsIO.h>


Detailed Description

Sets and checks options for netimport.

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.

Member Function Documentation

bool NIOptionsIO::checkOptions (  )  [static]

Checks set options from the OptionsCont-singleton for being valid.

Returns:
Whether all needed options are set
Todo:
Unused currently; repair/fill

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 }


The documentation for this class was generated from the following files:

Generated on Wed May 5 00:06:53 2010 for Sumo - Simulation of Urban MObility by  doxygen 1.5.6