![]() |
Eclipse SUMO - Simulation of Urban MObility
|
Static storage of an output device and its base (abstract) implementation. More...
#include <OutputDevice.h>
Static Public Member Functions | |
static access methods to OutputDevices | |
static OutputDevice & | getDevice (const std::string &name, bool usePrefix=true) |
Returns the described OutputDevice. | |
static bool | createDeviceByOption (const std::string &optionName, const std::string &rootElement="", const std::string &schemaFile="") |
Creates the device using the output definition stored in the named option. | |
static OutputDevice & | getDeviceByOption (const std::string &name) |
Returns the device described by the option. | |
static void | flushAll () |
static void | closeAll (bool keepErrorRetrievers=false) |
OutputDevice member methods | |
static std::map< std::string, OutputDevice * > | myOutputDevices |
map from names to output devices | |
static int | myPrevConsoleCP = -1 |
old console code page to restore after ending | |
const std::string | myFilename |
OutputFormatter * | myFormatter |
The formatter for XML, CSV or Parquet. | |
static const SumoXMLAttrMask | parseWrittenAttributes (const std::vector< std::string > &attrList, const std::string &desc, const std::map< std::string, SumoXMLAttrMask > &special=std::map< std::string, SumoXMLAttrMask >()) |
Parses a list of strings for attribute names and sets the relevant bits in the returned mask. | |
OutputDevice (const int defaultIndentation=0, const std::string &filename="") | |
Constructor. | |
virtual | ~OutputDevice () |
Destructor. | |
virtual bool | ok () |
returns the information whether one can write into the device | |
virtual bool | isNull () |
returns the information whether the device will discard all output | |
const std::string & | getFilename () |
get filename or suitable description of this device | |
void | close () |
Closes the device and removes it from the dictionary. | |
void | setFormatter (OutputFormatter *formatter) |
void | setPrecision (int precision=gPrecision) |
Sets the precision or resets it to default. | |
int | getPrecision () |
Returns the precision of the underlying stream. | |
bool | writeXMLHeader (const std::string &rootElement, const std::string &schemaFile, std::map< SumoXMLAttr, std::string > attrs=std::map< SumoXMLAttr, std::string >(), bool includeConfig=true) |
Writes an XML header with optional configuration. | |
OutputDevice & | openTag (const std::string &xmlElement) |
Opens an XML tag. | |
OutputDevice & | openTag (const SumoXMLTag &xmlElement) |
Opens an XML tag. | |
bool | closeTag (const std::string &comment="") |
Closes the most recently opened tag and optionally adds a comment. | |
void | lf () |
writes a line feed if applicable | |
template<typename T > | |
OutputDevice & | writeAttr (const SumoXMLAttr attr, const T &val) |
writes a named attribute | |
template<typename T > | |
OutputDevice & | writeOptionalAttr (const SumoXMLAttr attr, const T &val, const SumoXMLAttrMask &attributeMask, const bool isNull=false) |
writes a named attribute unless filtered | |
template<typename Func > | |
OutputDevice & | writeFuncAttr (const SumoXMLAttr attr, const Func &valFunc, const SumoXMLAttrMask &attributeMask, const bool isNull=false) |
template<typename T > | |
OutputDevice & | writeAttr (const std::string &attr, const T &val) |
writes an arbitrary attribute | |
OutputDevice & | writeNonEmptyAttr (const SumoXMLAttr attr, const std::string &val) |
writes a string attribute only if it is not the empty string and not the string "default" | |
OutputDevice & | writeTime (const SumoXMLAttr attr, const SUMOTime val) |
OutputDevice & | writePreformattedTag (const std::string &val) |
writes a preformatted tag to the device but ensures that any pending tags are closed | |
OutputDevice & | writePadding (const std::string &val) |
writes padding (ignored for binary output) | |
void | inform (const std::string &msg, const bool progress=false) |
Retrieves a message to this device. | |
template<class T > | |
OutputDevice & | operator<< (const T &t) |
Abstract output operator. | |
void | flush () |
bool | wroteHeader () const |
void | setExpectedAttributes (const SumoXMLAttrMask &expected, const int depth=2) |
virtual std::ostream & | getOStream ()=0 |
Returns the associated ostream. | |
virtual void | postWriteHook () |
Called after every write access. | |
OutputDevice (const OutputDevice &)=delete | |
Invalidated copy constructor. | |
OutputDevice & | operator= (const OutputDevice &)=delete |
Invalidated assignment operator. | |
Static storage of an output device and its base (abstract) implementation.
OutputDevices are basically a capsule around an std::ostream, which give a unified access to sockets, files and stdout.
Usually, an application builds as many output devices as needed. Each output device may also be used to save outputs from several sources (several detectors, for example). Building is done using OutputDevice::getDevice() what also parses the given output description in order to decide what kind of an OutputDevice shall be built. OutputDevices are closed via OutputDevice::closeAll(), normally called at the application's end.
Although everything that can be written to a stream can also be written to an OutputDevice, there is special support for XML tags (remembering all open tags to close them at the end). OutputDevices are still lacking support for function pointers with the '<<' operator (no endl, use '
'). The most important method to implement in subclasses is getOStream, the most used part of the interface is the '<<' operator.
The Boolean markers are used rarely and might get removed in future versions.
Definition at line 64 of file OutputDevice.h.
OutputDevice::OutputDevice | ( | const int | defaultIndentation = 0 , |
const std::string & | filename = "" |
||
) |
Constructor.
Definition at line 204 of file OutputDevice.cpp.
|
virtual |
|
privatedelete |
Invalidated copy constructor.
void OutputDevice::close | ( | ) |
Closes the device and removes it from the dictionary.
Definition at line 226 of file OutputDevice.cpp.
References closeTag(), myOutputDevices, and MsgHandler::removeRetrieverFromAllInstances().
Referenced by RONet::cleanup(), AStarRouter< E, V, M >::compute(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), GUIDialog_ViewSettings::onCmdExportSetting(), GUIDialog_Breakpoints::onCmdSave(), GNESelectorFrame::SelectionOperation::onCmdSave(), GUIParameterTracker::onCmdSave(), GUIDialog_EditViewport::onCmdSave(), GNERunNetgenerateDialog::onCmdSaveLog(), GNERunPythonToolDialog::onCmdSaveLog(), GNEMultipleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNESingleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNEVTypeDistributionsDialog::ParametersOperations::onCmdSaveParameters(), GNETLSEditorFrame::TLSFile::onCmdSaveTLSProgram(), GUIDialog_ViewSettings::onCmdSaveXMLDecals(), RODFDetectorCon::save(), PCPolyContainer::save(), GUISelectedStorage::save(), GNENet::saveAdditionalsConfirmed(), RODFDetectorCon::saveAsPOIs(), GNEFixDemandElements::FixOptions::saveContents(), GNEFixNetworkElements::FixOptions::saveContents(), GNENet::saveDataElementsConfirmed(), GNENet::saveDemandElementsConfirmed(), PCPolyContainer::saveDlrTDP(), GNENet::saveEdgeTypes(), GNENet::saveJuPedSimElements(), GNENet::saveMeanDatasConfirmed(), RODFDetectorCon::saveRoutes(), MSStateHandler::saveState(), GNENet::saveTLSPrograms(), GNEViewNet::saveVisualizationSettings(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_XML::writeJoinedJunctions(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_Amitran::writeNetwork(), NWWriter_MATSim::writeNetwork(), NWWriter_OpenDrive::writeNetwork(), NWWriter_SUMO::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_XML::writeParkingAreas(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), NWWriter_XML::writePTLines(), NWWriter_XML::writePTStops(), RODFDetector::writeSingleSpeedTrigger(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_XML::writeStreetSigns(), NWWriter_XML::writeTrafficLights(), NWWriter_DlrNavteq::writeTrafficSignals(), NWWriter_XML::writeTypes(), and RODFDetectorCon::writeValidationDetectors().
|
static |
Closes all registered devices
Definition at line 165 of file OutputDevice.cpp.
References MsgHandler::getErrorInstance(), MsgHandler::isRetriever(), myOutputDevices, myPrevConsoleCP, TL, and WRITE_ERROR.
Referenced by MSNet::clearAll(), SystemFrame::close(), GUIRunThread::deleteSim(), and main().
bool OutputDevice::closeTag | ( | const std::string & | comment = "" | ) |
Closes the most recently opened tag and optionally adds a comment.
The topmost xml-element from the stack is written into the stream as a closing element. Depending on the formatter used this may be something like "</" + element + ">" or "/>" or nothing at all.
Definition at line 273 of file OutputDevice.cpp.
References OutputFormatter::closeTag(), getOStream(), myFormatter, and postWriteHook().
Referenced by MSDriveWay::_saveState(), MSRoutingEngine::adaptEdgeEfforts(), RORouteHandler::addStop(), AGActivityTripWriter::addTrip(), AGActivityTripWriter::AGActivityTripWriter(), MSDevice_SSM::cleanup(), MSDevice_ToC::cleanup(), close(), RORouteHandler::closeContainer(), RORouteHandler::closeContainerFlow(), computeRoutes(), MSRoute::dict_saveState(), MSDispatch_GreedyShared::dispatch(), MSDispatch_RouteExtension::dispatch(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), MSVTypeProbe::execute(), MSDevice_SSM::flushGlobalMeasures(), MSDevice_Bluelight::generateOutput(), MSDevice_ElecHybrid::generateOutput(), MSDevice_Emissions::generateOutput(), MSDevice_Example::generateOutput(), MSDevice_Taxi::generateOutput(), MSDevice_Battery::generateOutput(), MSDevice_StationFinder::generateOutput(), MSDevice_Tripinfo::generateOutputForUnfinished(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSRailSignalControl::haveDeadlock(), MSAbstractLaneChangeModel::laneChangeOutput(), RORouteHandler::myStartElement(), MSDevice_Vehroutes::notifyStopEnded(), GUIDialog_ViewSettings::onCmdExportSetting(), GUIDialog_EditViewport::onCmdSave(), GNEMultipleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNESingleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNEVTypeDistributionsDialog::ParametersOperations::onCmdSaveParameters(), GUIDialog_ViewSettings::onCmdSaveXMLDecals(), MSVehicleControl::removePending(), MSStageDriving::routeOutput(), MSStageTranship::routeOutput(), MSStageTrip::routeOutput(), MSStageWaiting::routeOutput(), MSStageWalking::routeOutput(), MSTransportable::routeOutput(), RODFDetectorCon::save(), GUIVisualizationSettings::save(), GUIPropertyScheme< T >::save(), RODFRouteCont::save(), ROPerson::Stop::saveAsXML(), ROPerson::PersonTrip::saveAsXML(), ROPerson::Ride::saveAsXML(), ROPerson::Walk::saveAsXML(), ROPerson::saveAsXML(), ROVehicle::saveAsXML(), GUIDialog_ViewSettings::saveDecals(), GNENet::saveEdgeTypes(), MSMoveReminder::saveReminderState(), MSStateHandler::saveRNGs(), MSLane::saveRNGStates(), MSStateHandler::saveState(), MEVehicle::saveState(), MSRoutingEngine::saveState(), MSEdgeControl::saveState(), MSInsertionControl::saveState(), MSLane::saveState(), MSVehicle::saveState(), MSVehicleControl::saveState(), MSVehicleTransfer::saveState(), MSRailSignalConstraint::saveState(), MSRailSignalConstraint_Predecessor::PassedTracker::saveState(), MSTransportable::saveState(), MESegment::saveState(), MSDevice_Routing::saveState(), MSDevice_Transportable::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), MSTransportableDevice_Routing::saveState(), MSDevice_Battery::saveState(), MSDevice_StationFinder::saveState(), MSSimpleTrafficLightLogic::saveState(), GNEViewNet::saveVisualizationSettings(), MSStopOut::stopEnded(), MSTransportable::tripInfoOutput(), MSPerson::MSPersonStage_Access::tripInfoOutput(), MSStageDriving::tripInfoOutput(), MSStageTranship::tripInfoOutput(), MSStageWaiting::tripInfoOutput(), MSStageWalking::tripInfoOutput(), MSInstantInductLoop::write(), MSStop::write(), SUMOVTypeParameter::write(), SUMOVehicleParameter::Stop::write(), MSMeanData_Amitran::MSLaneMeanDataValues::write(), MSMeanData_Emissions::MSLaneMeanDataValues::write(), MSMeanData_Harmonoise::MSLaneMeanDataValues::write(), MSMeanData_Net::MSLaneMeanDataValues::write(), NBPTLine::write(), NBPTStop::write(), NBParking::write(), MSXMLRawOut::write(), MSFCDExport::write(), MSElecHybridExport::write(), MSEmissionExport::write(), MSFullExport::write(), MSQueueExport::write(), MSBatteryExport::write(), MSRailSignalConstraint_Predecessor::write(), ODMatrix::write(), GNEAccess::writeAdditional(), GNEBusStop::writeAdditional(), GNECalibrator::writeAdditional(), GNECalibratorFlow::writeAdditional(), GNEChargingStation::writeAdditional(), GNEClosingLaneReroute::writeAdditional(), GNEClosingReroute::writeAdditional(), GNEContainerStop::writeAdditional(), GNEDestProbReroute::writeAdditional(), GNEEntryExitDetector::writeAdditional(), GNEInductionLoopDetector::writeAdditional(), GNEInstantInductionLoopDetector::writeAdditional(), GNELaneAreaDetector::writeAdditional(), GNEMultiEntryExitDetector::writeAdditional(), GNEOverheadWire::writeAdditional(), GNEParkingArea::writeAdditional(), GNEParkingAreaReroute::writeAdditional(), GNEParkingSpace::writeAdditional(), GNERerouter::writeAdditional(), GNERerouterInterval::writeAdditional(), GNERouteProbe::writeAdditional(), GNERouteProbReroute::writeAdditional(), GNETAZ::writeAdditional(), GNETractionSubstation::writeAdditional(), GNEVaporizer::writeAdditional(), GNEVariableSpeedSign::writeAdditional(), GNEVariableSpeedSignStep::writeAdditional(), MSElecHybridExport::writeAggregated(), MSChargingStation::writeAggregatedChargingStationOutput(), MSLink::writeApproaching(), NBSign::writeAsPOI(), MSDriveWay::writeBlocks(), MSRailSignal::writeBlocks(), MSDriveWay::writeBlockVehicles(), MSChargingStation::writeChargingStationOutput(), MSNet::writeCollisions(), NWWriter_SUMO::writeConnection(), Command_SaveTLSProgram::writeCurrent(), GNEDataSet::writeDataSet(), GNEContainer::writeDemandElement(), GNEPerson::writeDemandElement(), GNEPersonTrip::writeDemandElement(), GNERide::writeDemandElement(), GNERoute::writeDemandElement(), GNERouteDistribution::writeDemandElement(), GNERouteRef::writeDemandElement(), GNEStopPlan::writeDemandElement(), GNETranship::writeDemandElement(), GNETransport::writeDemandElement(), GNEVehicle::writeDemandElement(), GNEVTypeDistribution::writeDemandElement(), GNEVTypeRef::writeDemandElement(), GNEWalk::writeDemandElement(), MSDriveWay::writeDepatureBlocks(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), MSQueueExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NBTypeCont::writeEdgeTypes(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitters(), ODMatrix::writeFlows(), GNEEdgeData::writeGenericData(), GNEEdgeRelData::writeGenericData(), GNETAZRelData::writeGenericData(), NWWriter_OpenDrive::writeGeomLines(), NWWriter_OpenDrive::writeGeomPP3(), RONet::writeIntermodal(), NWWriter_SUMO::writeInternalConnection(), NWWriter_OpenDrive::writeInternalEdge(), NWWriter_SUMO::writeInternalEdges(), NWWriter_SUMO::writeInternalNodes(), ROMAAssignments::writeInterval(), NWWriter_XML::writeJoinedJunctions(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), MSFullExport::writeLane(), MSQueueExport::writeLane(), MSXMLRawOut::writeLane(), GeoConvHelper::writeLocation(), NBRequest::writeLogic(), GNEMeanData::writeMeanData(), NWWriter_OpenDrive::writeNetwork(), NWWriter_SUMO::writeNetwork(), IntermodalRouter< E, L, N, V >::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_OpenDrive::writeNormalEdge(), GNEDemandElementPlan::writeOriginStop(), MSDevice_SSM::writeOutConflict(), MSDevice_ToC::writeOutput(), MSNet::writeOutput(), MSDevice_Vehroutes::writeOutput(), MSDevice_BTreceiver::BTreceiverUpdate::writeOutput(), MSOverheadWire::writeOverheadWireSegmentOutput(), Parameterised::writeParams(), MSFullExport::writePersons(), NWWriter_SUMO::writeProhibitions(), MSDevice_Tripinfo::writeRideStatistics(), NWWriter_OpenDrive::writeRoadObjectPOI(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_OpenDrive::writeRoadObjects(), NWWriter_SUMO::writeRoundabout(), NWWriter_OpenDrive::writeSignals(), RODFDetector::writeSingleSpeedTrigger(), RODFDetectorCon::writeSpeedTrigger(), MSNet::writeStatistics(), MSDevice_Tripinfo::writeStatistics(), NWWriter_SUMO::writeStopOffsets(), MSNet::writeSummaryOutput(), GNETAZSourceSink::writeTAZSourceSink(), MSFullExport::writeTLS(), MSTractionSubstation::writeTractionSubstationOutput(), NWWriter_SUMO::writeTrafficLight(), MSFCDExport::writeTransportable(), MSXMLRawOut::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSXMLRawOut::writeVehicle(), MSAmitranTrajectories::writeVehicle(), MSChargingStation::writeVehicle(), MSOverheadWire::writeVehicle(), MSFullExport::writeVehicles(), IntermodalRouter< E, L, N, V >::writeWeights(), GUIDialog_EditViewport::writeXML(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), RORouteDef::writeXMLDefinition(), RORoute::writeXMLDefinition(), TrajectoriesHandler::writeXMLEmissions(), MSInductLoop::writeXMLOutput(), MSMeanData::writeXMLOutput(), MSCalibrator::writeXMLOutput(), MSRouteProbe::writeXMLOutput(), and MSDevice_Vehroutes::writeXMLRoute().
|
static |
Creates the device using the output definition stored in the named option.
Creates and returns the device named by the option. Asks whether the option and retrieves the name from the option if so. Optionally the XML header gets written as well. Returns whether a device was created (option was set).
Please note, that we do not have to consider the "application base" herein, because this call is only used to get file names of files referenced within XML-declarations of structures which paths already is aware of the cwd.
[in] | optionName | The name of the option to use for retrieving the output definition |
[in] | rootElement | The root element to use (XML-output) |
[in] | schemaFile | The basename of the schema file to use (XML-output) |
IOError | If the output could not be built for any reason (error message is supplied) |
Definition at line 132 of file OutputDevice.cpp.
References getDevice(), OptionsCont::getOptions(), and writeXMLHeader().
Referenced by MSFrame::buildStreams(), computeAllPairs(), computeRoutes(), MSDevice_Vehroutes::init(), MSPModel_JuPedSim::initialize(), MSRoutingEngine::initWeightUpdate(), main(), main(), MSDispatch::MSDispatch(), MSTransportableControl::MSTransportableControl(), GNETagPropertiesDatabase::writeAttributeHelp(), RONet::writeIntermodal(), and NWWriter_OpenDrive::writeNetwork().
|
inline |
Definition at line 387 of file OutputDevice.h.
References getOStream().
Referenced by OutputDevice_CERR::postWriteHook(), OutputDevice_COUT::postWriteHook(), MSVehicleControl::removePending(), and MSMeanData::writeXMLOutput().
|
static |
Flushes all registered devices
Definition at line 157 of file OutputDevice.cpp.
References myOutputDevices.
Referenced by GUINet::flushOutputsAtEnd().
|
static |
Returns the described OutputDevice.
Creates and returns the named device. "stdout" and "stderr" refer to the relevant console streams, "hostname:port" initiates socket connection. Otherwise a filename is assumed (where "nul" and "/dev/null" do what you would expect on both platforms). If there already is a device with the same name this one is returned.
[in] | name | The description of the output name/port/whatever |
IOError | If the output could not be built for any reason (error message is supplied) |
Definition at line 60 of file OutputDevice.cpp.
References OptionsCont::exists(), OutputDevice_CERR::getDevice(), OutputDevice_COUT::getDevice(), OptionsIO::getLoadTime(), OptionsCont::getOptions(), getOStream(), OptionsCont::getString(), OptionsCont::isSet(), FileHelpers::isSocket(), myOutputDevices, myPrevConsoleCP, FileHelpers::prependToLastPathComponent(), setFormatter(), setPrecision(), StringUtils::substituteEnvironment(), TL, StringUtils::toInt(), and WRITE_WARNING.
Referenced by MSDetectorControl::add(), MSDetectorControl::add(), NLDetectorBuilder::buildE2Detector(), NLDetectorBuilder::buildE2Detector(), NLDiscreteEventBuilder::buildSaveTLSProgramCommand(), NLDiscreteEventBuilder::buildSaveTLStateCommand(), NLDiscreteEventBuilder::buildSaveTLSwitchesCommand(), NLDiscreteEventBuilder::buildSaveTLSwitchStatesCommand(), NLDetectorBuilder::buildVTypeProbe(), MSDevice_SSM::cleanup(), MSDevice_ToC::cleanup(), AStarRouter< E, V, M >::compute(), createDeviceByOption(), NLDetectorBuilder::createInstantInductLoop(), GUIDetectorBuilder::createInstantInductLoop(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), getDeviceByOption(), MsgHandler::initOutputOptions(), main(), MSCalibrator::MSCalibrator(), MSDevice_SSM::MSDevice_SSM(), MSDevice_ToC::MSDevice_ToC(), MsgHandler::MsgHandler(), GUIDialog_ViewSettings::onCmdExportSetting(), GUIDialog_Breakpoints::onCmdSave(), GNESelectorFrame::SelectionOperation::onCmdSave(), GUIParameterTracker::onCmdSave(), GUIDialog_EditViewport::onCmdSave(), GNERunNetgenerateDialog::onCmdSaveLog(), GNERunPythonToolDialog::onCmdSaveLog(), GNEMultipleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNESingleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNEVTypeDistributionsDialog::ParametersOperations::onCmdSaveParameters(), GNETLSEditorFrame::TLSFile::onCmdSaveTLSProgram(), GUIDialog_ViewSettings::onCmdSaveXMLDecals(), RONet::openOutput(), RandHelper::rand(), GUILoadThread::run(), RODFDetectorCon::save(), PCPolyContainer::save(), GUISelectedStorage::save(), GNENet::saveAdditionalsConfirmed(), RODFDetectorCon::saveAsPOIs(), GNEFixDemandElements::FixOptions::saveContents(), GNEFixNetworkElements::FixOptions::saveContents(), GNENet::saveDataElementsConfirmed(), GNENet::saveDemandElementsConfirmed(), PCPolyContainer::saveDlrTDP(), GNENet::saveEdgeTypes(), GNENet::saveJuPedSimElements(), GNENet::saveMeanDatasConfirmed(), RODFDetectorCon::saveRoutes(), MSStateHandler::saveState(), GNENet::saveTLSPrograms(), GNEViewNet::saveVisualizationSettings(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_XML::writeDistricts(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), RONet::writeIntermodal(), NWWriter_XML::writeJoinedJunctions(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_Amitran::writeNetwork(), NWWriter_MATSim::writeNetwork(), NWWriter_OpenDrive::writeNetwork(), NWWriter_SUMO::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), MSNet::writeOutput(), NWWriter_XML::writeParkingAreas(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), NWWriter_XML::writePTLines(), NWWriter_XML::writePTStops(), NIImporter_OpenDrive::writeRoadObjects(), RODFDetector::writeSingleSpeedTrigger(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_XML::writeStreetSigns(), NWWriter_XML::writeTrafficLights(), NWWriter_DlrNavteq::writeTrafficSignals(), NWWriter_XML::writeTypes(), and RODFDetectorCon::writeValidationDetectors().
|
static |
Returns the device described by the option.
Returns the device named by the option. If the option is unknown, unset or the device was not created before, InvalidArgument is thrown.
Please note, that we do not have to consider the "application base" herein.
[in] | name | The name of the option to use for retrieving the output definition |
IOError | If the output could not be built for any reason (error message is supplied) |
InvalidArgument | If the option with the given name does not exist |
Definition at line 147 of file OutputDevice.cpp.
References getDevice(), OptionsCont::getOptions(), OptionsCont::getString(), and myOutputDevices.
Referenced by MSRoutingEngine::adaptEdgeEfforts(), MSNet::closeSimulation(), computeAllPairs(), computeRoutes(), MSTransportableControl::erase(), MSDevice_Tripinfo::generateOutputForUnfinished(), MSRailSignalControl::haveDeadlock(), MSDevice_Vehroutes::init(), MSStopOut::init(), MSPModel_JuPedSim::initialize(), MSDevice_Emissions::initOnce(), MSDevice_FCD::initOnce(), MSAbstractLaneChangeModel::laneChangeOutput(), main(), MSDispatch::MSDispatch(), MSTransportableControl::MSTransportableControl(), MSVehicleControl::removePending(), GNETagPropertiesDatabase::writeAttributeHelp(), MSNet::writeChargingStationOutput(), MSNet::writeCollisions(), RONet::writeIntermodal(), MSNet::writeOutput(), MSDevice_Vehroutes::writeOutput(), MSDevice_BTreceiver::BTreceiverUpdate::writeOutput(), MSNet::writeOverheadWireSegmentOutput(), MSNet::writeRailSignalBlocks(), MSNet::writeStatistics(), MSNet::writeSubstationOutput(), and MSNet::writeSummaryOutput().
const std::string & OutputDevice::getFilename | ( | ) |
get filename or suitable description of this device
Definition at line 221 of file OutputDevice.cpp.
References myFilename.
|
protectedpure virtual |
Returns the associated ostream.
Implemented in MsgRetrievingFunction< T >, GUIMessageWindow::MsgOutputDevice, OutputDevice_CERR, OutputDevice_COUT, OutputDevice_Network, OutputDevice_String, and OutputDevice_File.
Referenced by closeTag(), flush(), getDevice(), getPrecision(), inform(), lf(), ok(), openTag(), openTag(), operator<<(), setPrecision(), writeAttr(), writeAttr(), writeFuncAttr(), writeOptionalAttr(), writePadding(), writePreformattedTag(), writeTime(), and writeXMLHeader().
|
inline |
Returns the precision of the underlying stream.
Definition at line 171 of file OutputDevice.h.
References getOStream().
Referenced by GUIPropertyScheme< T >::save(), MSBaseVehicle::saveState(), and SUMOVehicleParameter::write().
void OutputDevice::inform | ( | const std::string & | msg, |
const bool | progress = false |
||
) |
Retrieves a message to this device.
Implementation of the MessageRetriever interface. Writes the given message to the output device.
[in] | msg | The msg to write to the device |
Definition at line 287 of file OutputDevice.cpp.
References getOStream(), and postWriteHook().
|
inlinevirtual |
returns the information whether the device will discard all output
Reimplemented in OutputDevice_File.
Definition at line 148 of file OutputDevice.h.
Referenced by RONet::openOutput(), MSInstantInductLoop::write(), writeFuncAttr(), writeOptionalAttr(), MSE2Collector::writeXMLOutput(), and MSInductLoop::writeXMLOutput().
|
inline |
writes a line feed if applicable
Definition at line 225 of file OutputDevice.h.
References getOStream().
Referenced by AGActivityTripWriter::AGActivityTripWriter(), MSTransportable::routeOutput(), GUIVisualizationSettings::save(), MSDriveWay::writeBlocks(), NWWriter_XML::writeEdgesAndConnections(), NBTypeCont::writeEdgeTypes(), GeoConvHelper::writeLocation(), NWWriter_OpenDrive::writeNetwork(), NWWriter_SUMO::writeNetwork(), MSDevice_Vehroutes::writeOutput(), NWWriter_SUMO::writeRoundabouts(), and NWWriter_SUMO::writeTrafficLights().
|
virtual |
returns the information whether one can write into the device
Definition at line 215 of file OutputDevice.cpp.
References getOStream().
OutputDevice & OutputDevice::openTag | ( | const std::string & | xmlElement | ) |
Opens an XML tag.
An indentation, depending on the current xml-element-stack size, is written followed by the given xml element ("<" + xmlElement) The xml element is added to the stack, then.
[in] | xmlElement | Name of element to open |
Definition at line 259 of file OutputDevice.cpp.
References getOStream(), myFormatter, and OutputFormatter::openTag().
Referenced by MSDriveWay::_saveState(), MSRoutingEngine::adaptEdgeEfforts(), RORouteHandler::addStop(), AGActivityTripWriter::addTrip(), AGActivityTripWriter::AGActivityTripWriter(), computeRoutes(), MSRoute::dict_saveState(), MSDispatch_GreedyShared::dispatch(), MSDispatch_RouteExtension::dispatch(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), MSVTypeProbe::execute(), MSDevice_SSM::flushGlobalMeasures(), MSDevice_Bluelight::generateOutput(), MSDevice_ElecHybrid::generateOutput(), MSDevice_Emissions::generateOutput(), MSDevice_Example::generateOutput(), MSDevice_Taxi::generateOutput(), MSDevice_Tripinfo::generateOutput(), MSDevice_Battery::generateOutput(), MSDevice_StationFinder::generateOutput(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSRailSignalControl::haveDeadlock(), MSAbstractLaneChangeModel::laneChangeOutput(), RORouteHandler::myStartElement(), GUIDialog_ViewSettings::onCmdExportSetting(), GUIDialog_EditViewport::onCmdSave(), GNEMultipleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNESingleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNEVTypeDistributionsDialog::ParametersOperations::onCmdSaveParameters(), GUIDialog_ViewSettings::onCmdSaveXMLDecals(), MSMeanData::openInterval(), MSMeanData_Amitran::openInterval(), MSStageDriving::routeOutput(), MSStageTranship::routeOutput(), MSStageTrip::routeOutput(), MSStageWaiting::routeOutput(), MSStageWalking::routeOutput(), RODFDetectorCon::save(), GUIVisualizationSettings::save(), GUIPropertyScheme< T >::save(), RODFRouteCont::save(), RODFDetectorCon::saveAsPOIs(), ROPerson::PersonTrip::saveAsXML(), ROPerson::Ride::saveAsXML(), ROPerson::Walk::saveAsXML(), GUIDialog_ViewSettings::saveDecals(), GNENet::saveEdgeTypes(), MSMoveReminder::saveReminderState(), MSStateHandler::saveRNGs(), MSLane::saveRNGStates(), MSStateHandler::saveState(), MSRoutingEngine::saveState(), MSEdgeControl::saveState(), MSLane::saveState(), MSVehicleControl::saveState(), MSVehicleTransfer::saveState(), MSRailSignalConstraint::saveState(), MSRailSignalConstraint_Predecessor::PassedTracker::saveState(), MESegment::saveState(), MSDevice_Routing::saveState(), MSDevice_Transportable::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), MSTransportableDevice_Routing::saveState(), MSDevice_Battery::saveState(), MSDevice_StationFinder::saveState(), MSSimpleTrafficLightLogic::saveState(), GNENet::saveTLSPrograms(), GNEViewNet::saveVisualizationSettings(), MSStopOut::stopEnded(), MSTransportable::tripInfoOutput(), MSPerson::MSPersonStage_Access::tripInfoOutput(), MSStageDriving::tripInfoOutput(), MSStageTranship::tripInfoOutput(), MSStageWaiting::tripInfoOutput(), MSStageWalking::tripInfoOutput(), MSInstantInductLoop::write(), SUMOVTypeParameter::write(), SUMOVehicleParameter::Stop::write(), SUMOVehicleParameter::write(), MSMeanData_Amitran::MSLaneMeanDataValues::write(), NBPTLine::write(), NBPTStop::write(), NBParking::write(), MSXMLRawOut::write(), MSFCDExport::write(), MSElecHybridExport::write(), MSEmissionExport::write(), MSFullExport::write(), MSQueueExport::write(), MSBatteryExport::write(), MSRailSignalConstraint_Predecessor::write(), ODMatrix::write(), GNEAccess::writeAdditional(), GNEBusStop::writeAdditional(), GNECalibrator::writeAdditional(), GNECalibratorFlow::writeAdditional(), GNEChargingStation::writeAdditional(), GNEClosingLaneReroute::writeAdditional(), GNEClosingReroute::writeAdditional(), GNEContainerStop::writeAdditional(), GNEDestProbReroute::writeAdditional(), GNEEntryExitDetector::writeAdditional(), GNEInductionLoopDetector::writeAdditional(), GNEInstantInductionLoopDetector::writeAdditional(), GNELaneAreaDetector::writeAdditional(), GNEMultiEntryExitDetector::writeAdditional(), GNEOverheadWire::writeAdditional(), GNEParkingArea::writeAdditional(), GNEParkingAreaReroute::writeAdditional(), GNEParkingSpace::writeAdditional(), GNERerouter::writeAdditional(), GNERerouterInterval::writeAdditional(), GNERouteProbe::writeAdditional(), GNERouteProbReroute::writeAdditional(), GNETAZ::writeAdditional(), GNETractionSubstation::writeAdditional(), GNEVaporizer::writeAdditional(), GNEVariableSpeedSign::writeAdditional(), GNEVariableSpeedSignStep::writeAdditional(), MSElecHybridExport::writeAggregated(), MSChargingStation::writeAggregatedChargingStationOutput(), MSLink::writeApproaching(), NBSign::writeAsPOI(), MSDriveWay::writeBlocks(), MSRailSignal::writeBlocks(), MSDriveWay::writeBlockVehicles(), MSChargingStation::writeChargingStationOutput(), MSNet::writeCollisions(), NWWriter_SUMO::writeConnection(), Command_SaveTLSProgram::writeCurrent(), GNEDataSet::writeDataSet(), GNEPersonTrip::writeDemandElement(), GNERide::writeDemandElement(), GNERoute::writeDemandElement(), GNERouteDistribution::writeDemandElement(), GNERouteRef::writeDemandElement(), GNEStop::writeDemandElement(), GNEStopPlan::writeDemandElement(), GNETranship::writeDemandElement(), GNETransport::writeDemandElement(), GNEVTypeDistribution::writeDemandElement(), GNEVTypeRef::writeDemandElement(), GNEWalk::writeDemandElement(), MSDriveWay::writeDepatureBlocks(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), MSQueueExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NBTypeCont::writeEdgeTypes(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), ODMatrix::writeFlows(), GNEEdgeData::writeGenericData(), GNEEdgeRelData::writeGenericData(), GNETAZRelData::writeGenericData(), NWWriter_OpenDrive::writeGeomLines(), NWWriter_OpenDrive::writeGeomPP3(), RONet::writeIntermodal(), NWWriter_SUMO::writeInternalConnection(), NWWriter_OpenDrive::writeInternalEdge(), NWWriter_SUMO::writeInternalEdges(), NWWriter_SUMO::writeInternalNodes(), ROMAAssignments::writeInterval(), NWWriter_XML::writeJoinedJunctions(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), MSFullExport::writeLane(), MSQueueExport::writeLane(), MSXMLRawOut::writeLane(), GeoConvHelper::writeLocation(), NBRequest::writeLogic(), GNEMeanData::writeMeanData(), NWWriter_OpenDrive::writeNetwork(), NWWriter_SUMO::writeNetwork(), IntermodalRouter< E, L, N, V >::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_OpenDrive::writeNormalEdge(), GNEDemandElementPlan::writeOriginStop(), MSDevice_SSM::writeOutConflict(), MSDevice_ToC::writeOutput(), MSNet::writeOutput(), MSDevice_Vehroutes::writeOutput(), MSDevice_BTreceiver::BTreceiverUpdate::writeOutput(), MSOverheadWire::writeOverheadWireSegmentOutput(), Parameterised::writeParams(), MSFullExport::writePersons(), MSMeanData::writePrefix(), MSMeanData_Amitran::writePrefix(), NWWriter_SUMO::writeProhibitions(), MSDevice_Tripinfo::writeRideStatistics(), NWWriter_OpenDrive::writeRoadObjectPOI(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_OpenDrive::writeRoadObjects(), NWWriter_SUMO::writeRoundabout(), NWWriter_OpenDrive::writeSignals(), RODFDetector::writeSingleSpeedTrigger(), RODFDetectorCon::writeSpeedTrigger(), MSNet::writeStatistics(), MSDevice_Tripinfo::writeStatistics(), NWWriter_SUMO::writeStopOffsets(), MSNet::writeSummaryOutput(), GNETAZSourceSink::writeTAZSourceSink(), MSFullExport::writeTLS(), MSTractionSubstation::writeTractionSubstationOutput(), NWWriter_SUMO::writeTrafficLight(), MSFCDExport::writeTransportable(), MSXMLRawOut::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSXMLRawOut::writeVehicle(), MSAmitranTrajectories::writeVehicle(), MSChargingStation::writeVehicle(), MSOverheadWire::writeVehicle(), MSFullExport::writeVehicles(), IntermodalRouter< E, L, N, V >::writeWeights(), GUIDialog_EditViewport::writeXML(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), RORouteDef::writeXMLDefinition(), RORoute::writeXMLDefinition(), TrajectoriesHandler::writeXMLEmissions(), MEInductLoop::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), MSRouteProbe::writeXMLOutput(), and MSDevice_Vehroutes::writeXMLRoute().
OutputDevice & OutputDevice::openTag | ( | const SumoXMLTag & | xmlElement | ) |
Opens an XML tag.
Helper method which finds the correct string before calling openTag.
[in] | xmlElement | Id of the element to open |
Definition at line 266 of file OutputDevice.cpp.
References getOStream(), myFormatter, and OutputFormatter::openTag().
|
inline |
Abstract output operator.
Definition at line 381 of file OutputDevice.h.
References getOStream(), and postWriteHook().
|
privatedelete |
Invalidated assignment operator.
|
static |
Parses a list of strings for attribute names and sets the relevant bits in the returned mask.
It honors the special value "all" to set all bits and other special values for predefined bit sets given as parameter
[in] | attrList | The attribute names and special values |
[in] | desc | A descriptive string for the error message if the attribute is unknown |
[in] | special | special values for predefined bitsets |
Definition at line 298 of file OutputDevice.cpp.
References SUMOXMLDefinitions::Attrs, TL, and WRITE_ERRORF.
Referenced by MSDevice_FCD::initOnce().
|
protectedvirtual |
Called after every write access.
Default implementation does nothing.
Reimplemented in MsgRetrievingFunction< T >, GUIMessageWindow::MsgOutputDevice, OutputDevice_CERR, OutputDevice_COUT, and OutputDevice_Network.
Definition at line 283 of file OutputDevice.cpp.
Referenced by closeTag(), inform(), and operator<<().
|
inline |
Definition at line 395 of file OutputDevice.h.
References myFormatter, and OutputFormatter::setExpectedAttributes().
Referenced by MSDevice_Emissions::initOnce(), and MSDevice_FCD::initOnce().
|
inline |
Definition at line 159 of file OutputDevice.h.
References myFormatter.
Referenced by getDevice().
void OutputDevice::setPrecision | ( | int | precision = gPrecision | ) |
Sets the precision or resets it to default.
[in] | precision | The accuracy (number of digits behind '.') to set |
Definition at line 240 of file OutputDevice.cpp.
References getOStream().
Referenced by MSVTypeProbe::execute(), MSDevice_Emissions::generateOutput(), getDevice(), MSPModel_JuPedSim::initialize(), OutputDevice_String::OutputDevice_String(), PCPolyContainer::save(), GUIPropertyScheme< T >::save(), ROPerson::PersonTrip::saveAsXML(), ROVehicle::saveAsXML(), PCPolyContainer::saveDlrTDP(), MSStateHandler::saveState(), MSBaseVehicle::saveState(), MSTransportable::saveState(), SUMOVehicleParameter::write(), MSMeanData_Emissions::MSLaneMeanDataValues::write(), MSXMLRawOut::write(), MSFCDExport::write(), MSElecHybridExport::write(), MSEmissionExport::write(), MSBatteryExport::write(), MSElecHybridExport::writeAggregated(), NWWriter_SUMO::writeConnection(), MSEmissionExport::writeEmissions(), ODMatrix::writeFlows(), NWWriter_OpenDrive::writeInternalEdge(), GeoConvHelper::writeLocation(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_OpenDrive::writeNormalEdge(), MSDevice_Vehroutes::writeOutput(), NWWriter_OpenDrive::writeRoadObjects(), NWWriter_XML::writeShape(), NWWriter_OpenDrive::writeSignals(), MSDevice_Tripinfo::writeStatistics(), MSNet::writeSubstationOutput(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), and RORoute::writeXMLDefinition().
|
inline |
writes an arbitrary attribute
[in] | attr | The attribute (name) |
[in] | val | The attribute value |
Definition at line 321 of file OutputDevice.h.
References getOStream(), OutputFormatter::getType(), myFormatter, writeAttr(), PlainXMLFormatter::writeAttr(), and XML.
|
inline |
writes a named attribute
[in] | attr | The attribute (name) |
[in] | val | The attribute value |
Definition at line 236 of file OutputDevice.h.
References getOStream(), OutputFormatter::getType(), myFormatter, writeAttr(), PlainXMLFormatter::writeAttr(), and XML.
Referenced by MSDriveWay::_saveState(), MSRoutingEngine::adaptEdgeEfforts(), AGActivityTripWriter::addTrip(), AGActivityTripWriter::AGActivityTripWriter(), computeRoutes(), MSRoute::dict_saveState(), MSDispatch_GreedyShared::dispatch(), MSDispatch_RouteExtension::dispatch(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), MSVTypeProbe::execute(), MSDevice_SSM::flushGlobalMeasures(), MSDevice_ElecHybrid::generateOutput(), MSDevice_Emissions::generateOutput(), MSDevice_Example::generateOutput(), MSDevice_Taxi::generateOutput(), MSDevice_Tripinfo::generateOutput(), MSDevice_Battery::generateOutput(), MSDevice_StationFinder::generateOutput(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSRailSignalControl::haveDeadlock(), MSAbstractLaneChangeModel::laneChangeOutput(), MSDevice_Vehroutes::notifyStopEnded(), GUIDialog_ViewSettings::onCmdExportSetting(), GNEMultipleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNESingleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNEVTypeDistributionsDialog::ParametersOperations::onCmdSaveParameters(), MSMeanData::openInterval(), MSMeanData_Amitran::openInterval(), GUIVisualizationTextSettings::print(), GUIVisualizationRainbowSettings::print(), GUIVisualizationSizeSettings::print(), MSStageDriving::routeOutput(), MSStageTranship::routeOutput(), MSStageTrip::routeOutput(), MSStageWaiting::routeOutput(), MSStageWalking::routeOutput(), MSTransportable::routeOutput(), RODFDetectorCon::save(), GUIVisualizationSettings::save(), GUIPropertyScheme< T >::save(), RODFRouteCont::save(), RODFDetectorCon::saveAsPOIs(), ROPerson::PersonTrip::saveAsXML(), ROPerson::Ride::saveAsXML(), ROPerson::Walk::saveAsXML(), ROVehicle::saveAsXML(), GUIDialog_ViewSettings::saveDecals(), MSMoveReminder::saveReminderState(), MSStateHandler::saveRNGs(), MSLane::saveRNGStates(), MSStateHandler::saveState(), MEVehicle::saveState(), MSRoutingEngine::saveState(), MSBaseVehicle::saveState(), MSEdgeControl::saveState(), MSInsertionControl::saveState(), MSLane::saveState(), MSVehicle::saveState(), MSVehicleControl::saveState(), MSVehicleTransfer::saveState(), MSRailSignalConstraint::saveState(), MSRailSignalConstraint_Predecessor::PassedTracker::saveState(), MSTransportable::saveState(), MSTransportableControl::saveState(), MESegment::saveState(), MSDevice_Routing::saveState(), MSDevice_Transportable::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), MSTransportableDevice_Routing::saveState(), MSAbstractLaneChangeModel::saveState(), MSDevice_Battery::saveState(), MSDevice_StationFinder::saveState(), MSSimpleTrafficLightLogic::saveState(), GNEViewNet::saveVisualizationSettings(), MSStopOut::stopEnded(), MSTransportable::tripInfoOutput(), MSPerson::MSPersonStage_Access::tripInfoOutput(), MSStageDriving::tripInfoOutput(), MSStageTranship::tripInfoOutput(), MSStageWaiting::tripInfoOutput(), MSStageWalking::tripInfoOutput(), MSInstantInductLoop::write(), MSStop::write(), SUMOVTypeParameter::write(), SUMOVehicleParameter::Stop::write(), SUMOVehicleParameter::write(), MSMeanData_Amitran::MSLaneMeanDataValues::write(), NBPTLine::write(), NBPTStop::write(), NBParking::write(), MSFCDExport::write(), MSElecHybridExport::write(), MSEmissionExport::write(), MSQueueExport::write(), MSBatteryExport::write(), MSRailSignalConstraint_Predecessor::write(), ODMatrix::write(), GNEAccess::writeAdditional(), GNEBusStop::writeAdditional(), GNECalibrator::writeAdditional(), GNECalibratorFlow::writeAdditional(), GNEChargingStation::writeAdditional(), GNEClosingLaneReroute::writeAdditional(), GNEClosingReroute::writeAdditional(), GNEContainerStop::writeAdditional(), GNEDestProbReroute::writeAdditional(), GNEEntryExitDetector::writeAdditional(), GNEInductionLoopDetector::writeAdditional(), GNEInstantInductionLoopDetector::writeAdditional(), GNELaneAreaDetector::writeAdditional(), GNEMultiEntryExitDetector::writeAdditional(), GNEOverheadWire::writeAdditional(), GNEParkingArea::writeAdditional(), GNEParkingAreaReroute::writeAdditional(), GNEParkingSpace::writeAdditional(), GNERerouter::writeAdditional(), GNERerouterInterval::writeAdditional(), GNERouteProbe::writeAdditional(), GNERouteProbReroute::writeAdditional(), GNETAZ::writeAdditional(), GNETractionSubstation::writeAdditional(), GNEVaporizer::writeAdditional(), GNEVariableSpeedSign::writeAdditional(), GNEVariableSpeedSignStep::writeAdditional(), MSMeanData::writeAggregated(), MSElecHybridExport::writeAggregated(), MSChargingStation::writeAggregatedChargingStationOutput(), MSLink::writeApproaching(), NBSign::writeAsPOI(), writeAttr(), writeAttr(), MSDriveWay::writeBlocks(), MSRailSignal::writeBlocks(), MSDriveWay::writeBlockVehicles(), MSChargingStation::writeChargingStationOutput(), MSNet::writeCollisions(), NWWriter_SUMO::writeConnection(), Command_SaveTLSProgram::writeCurrent(), GNEDataSet::writeDataSet(), ODMatrix::writeDefaultAttrs(), GNEPersonTrip::writeDemandElement(), GNERide::writeDemandElement(), GNERoute::writeDemandElement(), GNERouteDistribution::writeDemandElement(), GNERouteRef::writeDemandElement(), GNEStop::writeDemandElement(), GNEStopPlan::writeDemandElement(), GNETranship::writeDemandElement(), GNETransport::writeDemandElement(), GNEVehicle::writeDemandElement(), GNEVTypeDistribution::writeDemandElement(), GNEVTypeRef::writeDemandElement(), GNEWalk::writeDemandElement(), MSDriveWay::writeDepatureBlocks(), GNEDetector::writeDetectorValues(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NBTypeCont::writeEdgeTypes(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), GNEDemandElementFlow::writeFlowAttributes(), ODMatrix::writeFlows(), writeFuncAttr(), GNEEdgeData::writeGenericData(), GNEEdgeRelData::writeGenericData(), GNETAZRelData::writeGenericData(), NWWriter_OpenDrive::writeGeomLines(), NWWriter_OpenDrive::writeGeomPP3(), RONet::writeIntermodal(), NWWriter_SUMO::writeInternalConnection(), NWWriter_OpenDrive::writeInternalEdge(), NWWriter_SUMO::writeInternalEdges(), NWWriter_SUMO::writeInternalNodes(), ROMAAssignments::writeInterval(), NWWriter_XML::writeJoinedJunctions(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), MSFullExport::writeLane(), MSQueueExport::writeLane(), MSXMLRawOut::writeLane(), GeoConvHelper::writeLocation(), GNEDemandElementPlan::writeLocationAttributes(), NBRequest::writeLogic(), GNEMeanData::writeMeanData(), NWWriter_OpenDrive::writeNetwork(), NWWriter_SUMO::writeNetwork(), IntermodalRouter< E, L, N, V >::writeNetwork(), NWWriter_XML::writeNodes(), writeNonEmptyAttr(), NWWriter_OpenDrive::writeNormalEdge(), writeOptionalAttr(), GNEDemandElementPlan::writeOriginStop(), MSDevice_SSM::writeOutConflict(), MSDevice_ToC::writeOutput(), MSNet::writeOutput(), MSDevice_Vehroutes::writeOutput(), MSDevice_BTreceiver::BTreceiverUpdate::writeOutput(), MSOverheadWire::writeOverheadWireSegmentOutput(), Parameterised::writeParams(), writePermissions(), MSFullExport::writePersons(), NWFrame::writePositionLong(), writePreferences(), MSMeanData::writePrefix(), MSMeanData_Amitran::writePrefix(), NWWriter_SUMO::writeProhibitions(), MSDevice_Tripinfo::writeRideStatistics(), NWWriter_OpenDrive::writeRoadObjectPOI(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_SUMO::writeRoundabout(), NWWriter_XML::writeShape(), NWWriter_OpenDrive::writeSignals(), RODFDetector::writeSingleSpeedTrigger(), RODFDetectorCon::writeSpeedTrigger(), MSNet::writeStatistics(), MSDevice_Tripinfo::writeStatistics(), NWWriter_SUMO::writeStopOffsets(), GNEStoppingPlace::writeStoppingPlaceAttributes(), MSNet::writeSummaryOutput(), GNETAZSourceSink::writeTAZSourceSink(), MSFullExport::writeTLS(), MSTractionSubstation::writeTractionSubstationOutput(), NWWriter_SUMO::writeTrafficLight(), MSFCDExport::writeTransportable(), MSXMLRawOut::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSXMLRawOut::writeVehicle(), MSAmitranTrajectories::writeVehicle(), MSChargingStation::writeVehicle(), MSOverheadWire::writeVehicle(), MSFullExport::writeVehicles(), IntermodalRouter< E, L, N, V >::writeWeights(), GUIDialog_EditViewport::writeXML(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), RORouteDef::writeXMLDefinition(), RORoute::writeXMLDefinition(), TrajectoriesHandler::writeXMLEmissions(), MEInductLoop::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), and MSDevice_Vehroutes::writeXMLRoute().
|
inline |
Definition at line 292 of file OutputDevice.h.
References getOStream(), OutputFormatter::getType(), isNull(), myFormatter, writeAttr(), PlainXMLFormatter::writeAttr(), and XML.
Referenced by MSFCDExport::write(), and MSEmissionExport::writeEmissions().
|
inline |
writes a string attribute only if it is not the empty string and not the string "default"
[in] | attr | The attribute (name) |
[in] | val | The attribute value |
Definition at line 340 of file OutputDevice.h.
References writeAttr().
Referenced by SUMOVehicleParameter::write(), and RODFDetector::writeEmitterDefinition().
|
inline |
writes a named attribute unless filtered
[in] | attr | The attribute (name) |
[in] | val | The attribute value |
[in] | attributeMask | The filter that specifies whether the attribute shall be written |
Definition at line 269 of file OutputDevice.h.
References getOStream(), OutputFormatter::getType(), isNull(), myFormatter, writeAttr(), PlainXMLFormatter::writeAttr(), and XML.
Referenced by MSMeanData_Amitran::MSLaneMeanDataValues::write(), MSMeanData_Emissions::MSLaneMeanDataValues::write(), MSMeanData_Harmonoise::MSLaneMeanDataValues::write(), MSMeanData_Net::MSLaneMeanDataValues::write(), MSFCDExport::write(), MSEmissionExport::write(), MSEmissionExport::writeEmissions(), MSMeanData::writePrefix(), and MSFCDExport::writeTransportable().
|
inline |
writes padding (ignored for binary output)
Definition at line 363 of file OutputDevice.h.
References getOStream(), myFormatter, and OutputFormatter::writePadding().
Referenced by MSMeanData_Emissions::MSLaneMeanDataValues::write(), Command_SaveTLSProgram::writeCurrent(), NBRequest::writeLogic(), and NWWriter_SUMO::writeTrafficLight().
|
inline |
writes a preformatted tag to the device but ensures that any pending tags are closed
[in] | val | The preformatted data |
Definition at line 357 of file OutputDevice.h.
References getOStream(), myFormatter, and OutputFormatter::writePreformattedTag().
Referenced by computeRoutes(), RONet::saveAndRemoveRoutesUntil(), and NWWriter_OpenDrive::writeNetwork().
|
inline |
Definition at line 347 of file OutputDevice.h.
References getOStream(), myFormatter, and OutputFormatter::writeTime().
Referenced by MSFCDExport::write().
bool OutputDevice::writeXMLHeader | ( | const std::string & | rootElement, |
const std::string & | schemaFile, | ||
std::map< SumoXMLAttr, std::string > | attrs = std::map<SumoXMLAttr, std::string>() , |
||
bool | includeConfig = true |
||
) |
Writes an XML header with optional configuration.
If something has been written (myXMLStack is not empty), nothing is written and false returned.
[in] | rootElement | The root element to use |
[in] | schemaFile | The basename of the schema file to use |
[in] | attrs | Additional attributes to save within the rootElement |
Definition at line 246 of file OutputDevice.cpp.
References getOStream(), myFormatter, SUMO_ATTR_SCHEMA_LOCATION, SUMO_ATTR_XMLNS, and OutputFormatter::writeXMLHeader().
Referenced by Command_SaveTLSProgram::Command_SaveTLSProgram(), Command_SaveTLSSwitches::Command_SaveTLSSwitches(), Command_SaveTLSSwitchStates::Command_SaveTLSSwitchStates(), createDeviceByOption(), MSDispatch_RouteExtension::dispatch(), Command_SaveTLSState::execute(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSDevice_SSM::MSDevice_SSM(), MSDevice_ToC::MSDevice_ToC(), MSVTypeProbe::MSVTypeProbe(), GNEMultipleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNESingleParametersDialog::ParametersOperations::onCmdSaveParameters(), GNEVTypeDistributionsDialog::ParametersOperations::onCmdSaveParameters(), GNETLSEditorFrame::TLSFile::onCmdSaveTLSProgram(), RONet::openOutput(), RODFDetectorCon::save(), PCPolyContainer::save(), GNENet::saveAdditionalsConfirmed(), RODFDetectorCon::saveAsPOIs(), GNENet::saveDataElementsConfirmed(), GNENet::saveDemandElementsConfirmed(), GNENet::saveJuPedSimElements(), GNENet::saveMeanDatasConfirmed(), RODFDetectorCon::saveRoutes(), MSStateHandler::saveState(), NWWriter_XML::writeDistricts(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_XML::writeJoinedJunctions(), NWWriter_SUMO::writeNetwork(), NWWriter_XML::writeNodes(), MSNet::writeOutput(), NWWriter_XML::writeParkingAreas(), NWWriter_XML::writePTLines(), NWWriter_XML::writePTStops(), NIImporter_OpenDrive::writeRoadObjects(), RODFDetector::writeSingleSpeedTrigger(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_XML::writeStreetSigns(), NWWriter_XML::writeTrafficLights(), NWWriter_XML::writeTypes(), RODFDetectorCon::writeValidationDetectors(), MEInductLoop::writeXMLDetectorProlog(), MSE2Collector::writeXMLDetectorProlog(), MSE3Collector::writeXMLDetectorProlog(), MSInductLoop::writeXMLDetectorProlog(), MSInstantInductLoop::writeXMLDetectorProlog(), MSMeanData::writeXMLDetectorProlog(), MSMeanData_Amitran::writeXMLDetectorProlog(), MSCalibrator::writeXMLDetectorProlog(), and MSRouteProbe::writeXMLDetectorProlog().
|
inline |
Definition at line 391 of file OutputDevice.h.
References myFormatter, and OutputFormatter::wroteHeader().
Referenced by Command_SaveTLSState::execute().
|
protected |
Definition at line 418 of file OutputDevice.h.
Referenced by getFilename().
|
protected |
The formatter for XML, CSV or Parquet.
Definition at line 421 of file OutputDevice.h.
Referenced by closeTag(), openTag(), openTag(), setExpectedAttributes(), setFormatter(), writeAttr(), writeAttr(), writeFuncAttr(), writeOptionalAttr(), writePadding(), writePreformattedTag(), writeTime(), writeXMLHeader(), wroteHeader(), ~OutputDevice(), and OutputDevice_File::~OutputDevice_File().
|
staticprivate |
map from names to output devices
Definition at line 412 of file OutputDevice.h.
Referenced by close(), closeAll(), flushAll(), getDevice(), and getDeviceByOption().
|
staticprivate |
old console code page to restore after ending
Definition at line 415 of file OutputDevice.h.
Referenced by closeAll(), and getDevice().