![]() |
SUMO - Simulation of Urban MObility
|
A detector of vehicles passing an area between entry/exit points. More...
#include <MSE3Collector.h>
Data Structures | |
struct | E3Values |
Internal storage for values from a vehicle. More... | |
class | MSE3EntryReminder |
A place on the road net (at a certain lane and position on it) where the E3 area begins. More... | |
class | MSE3LeaveReminder |
A place on the road net (at a certain lane and position on it) where the E3 area ends. More... | |
Public Member Functions | |
void | addTo (const StoringVisitor &cont) const |
Adds this object to the given container. More... | |
void | detectorUpdate (const SUMOTime step) |
Computes the detector values in each time step. More... | |
void | enter (const SUMOVehicle &veh, const SUMOReal entryTimestep, const SUMOReal fractionTimeOnDet) |
Called if a vehicle touches an entry-cross-section. More... | |
const std::string & | getID () const |
Returns the id. More... | |
void | leave (const SUMOVehicle &veh, const SUMOReal leaveTimestep, const SUMOReal fractionTimeOnDet) |
Called if a vehicle passes a leave-cross-section. More... | |
MSE3Collector (const std::string &id, const CrossSectionVector &entries, const CrossSectionVector &exits, SUMOReal haltingSpeedThreshold, SUMOTime haltingTimeThreshold) | |
Constructor. More... | |
void | reset () |
Resets all generated values to allow computation of next interval. More... | |
void | setID (const std::string &newID) |
resets the id More... | |
virtual | ~MSE3Collector () |
Destructor. More... | |
Methods returning current values | |
SUMOReal | getCurrentMeanSpeed () const |
Returns the mean speed within the area. More... | |
int | getCurrentHaltingNumber () const |
Returns the number of current haltings within the area. More... | |
int | getVehiclesWithin () const |
Returns the number of vehicles within the area. More... | |
std::vector< std::string > | getCurrentVehicleIDs () const |
Returns the number of vehicles within the area. More... | |
Methods inherited from MSDetectorFileOutput. | |
void | writeXMLOutput (OutputDevice &dev, SUMOTime startTime, SUMOTime stopTime) |
Writes collected values into the given stream. More... | |
void | writeXMLDetectorProlog (OutputDevice &dev) const |
Opens the XML-output using "e3Detector" as root element. More... | |
Virtual methods to implement by derived classes | |
virtual GUIDetectorWrapper * | buildDetectorGUIRepresentation () |
Builds the graphical representation. More... | |
Static Public Member Functions | |
template<class T > | |
static std::string | getIDSecure (const T *obj, const std::string &fallBack="NULL") |
get an identifier for Named-like object which may be Null More... | |
Protected Attributes | |
std::map< const SUMOVehicle *, E3Values > | myEnteredContainer |
Container for vehicles that have entered the area. More... | |
CrossSectionVector | myEntries |
The detector's entries. More... | |
std::vector< MSE3EntryReminder * > | myEntryReminders |
The detector's built entry reminder. More... | |
CrossSectionVector | myExits |
The detector's exits. More... | |
SUMOReal | myHaltingSpeedThreshold |
Speed-threshold to determine if a vehicle is halting. More... | |
SUMOTime | myHaltingTimeThreshold |
std::string | myID |
The name of the object. More... | |
SUMOTime | myLastResetTime |
Information when the last reset has been done. More... | |
std::vector< MSE3LeaveReminder * > | myLeaveReminders |
The detector's built exit reminder. More... | |
std::map< const SUMOVehicle *, E3Values > | myLeftContainer |
Container for vehicles that have left the area. More... | |
Storages for current values | |
SUMOReal | myCurrentMeanSpeed |
The current mean speed of known vehicles (inside) More... | |
int | myCurrentHaltingsNumber |
The current number of haltings (inside) More... | |
Private Member Functions | |
MSE3Collector (const MSE3Collector &) | |
Invalidated copy constructor. More... | |
MSE3Collector & | operator= (const MSE3Collector &) |
Invalidated assignment operator. More... | |
A detector of vehicles passing an area between entry/exit points.
E3 detectors are defined by a set of in-cross-sections and out-cross-sections. Vehicles, that pass an in- and out-cross-section are detected when they pass the out-cross-section. Vehicles passing the out-cross-section without having passed the in-cross-section are not detected.
Definition at line 65 of file MSE3Collector.h.
MSE3Collector::MSE3Collector | ( | const std::string & | id, |
const CrossSectionVector & | entries, | ||
const CrossSectionVector & | exits, | ||
SUMOReal | haltingSpeedThreshold, | ||
SUMOTime | haltingTimeThreshold | ||
) |
Constructor.
Sets reminder objects on entry- and leave-lanes
[in] | id | The detector's unique id. |
[in] | entries | Entry-cross-sections. |
[in] | exits | Leavey-cross-sections. |
[in] | haltingSpeedThreshold | A vehicle must not drive a greater speed than haltingSpeedThreshold to be a "halting" vehicle. |
[in] | haltingTimeThreshold | A vehicle must not drive a greater speed for more than haltingTimeThreshold to be a "halting" vehicle. |
Definition at line 126 of file MSE3Collector.cpp.
References myEntryReminders, myLeaveReminders, and reset().
|
virtual |
Destructor.
Definition at line 145 of file MSE3Collector.cpp.
References myEntryReminders, and myLeaveReminders.
|
private |
Invalidated copy constructor.
|
inlineinherited |
Adds this object to the given container.
Definition at line 126 of file Named.h.
References Named::StoringVisitor::add().
|
inlinevirtualinherited |
Builds the graphical representation.
Meant to be overridden by graphical versions of the detectors
Reimplemented in GUI_E2_ZS_Collector, GUIInductLoop, GUIE3Collector, GUI_E2_ZS_CollectorOverLanes, GUIInstantInductLoop, and GUIMEInductLoop.
Definition at line 123 of file MSDetectorFileOutput.h.
References MSDetectorFileOutput::MSDetectorFileOutput(), and MSDetectorFileOutput::operator=().
|
virtual |
Computes the detector values in each time step.
This method should be called at the end of a simulation step, when all vehicles have moved. The current values are computed and summed up with the previous.
[in] | currentTime | The current simulation time (unused) |
Reimplemented from MSDetectorFileOutput.
Definition at line 282 of file MSE3Collector.cpp.
References SUMOVehicle::getSpeed(), MSE3Collector::E3Values::hadUpdate, MSE3Collector::E3Values::haltingBegin, MSE3Collector::E3Values::haltings, MSE3Collector::E3Values::intervalHaltings, MSE3Collector::E3Values::intervalSpeedSum, myCurrentHaltingsNumber, myCurrentMeanSpeed, myEnteredContainer, myHaltingSpeedThreshold, myHaltingTimeThreshold, MSE3Collector::E3Values::speedSum, STEPS2TIME, SUMOReal, and TS.
void MSE3Collector::enter | ( | const SUMOVehicle & | veh, |
const SUMOReal | entryTimestep, | ||
const SUMOReal | fractionTimeOnDet | ||
) |
Called if a vehicle touches an entry-cross-section.
Inserts vehicle into internal containers.
[in] | veh | The vehicle that entered the area |
[in] | entryTimestep | The time in seconds the vehicle entered the area |
[in] | fractionTimeOnDet | The interpolated time in seconds the vehicle already spent on the detector |
Definition at line 163 of file MSE3Collector.cpp.
References MSE3Collector::E3Values::entryTime, Named::getID(), SUMOVehicle::getID(), SUMOVehicle::getSpeed(), MSE3Collector::E3Values::hadUpdate, MSE3Collector::E3Values::haltingBegin, MSE3Collector::E3Values::haltings, MSE3Collector::E3Values::intervalHaltings, MSE3Collector::E3Values::intervalSpeedSum, MSE3Collector::E3Values::leaveTime, myEnteredContainer, myHaltingSpeedThreshold, myHaltingTimeThreshold, myLastResetTime, MSE3Collector::E3Values::speedSum, STEPS2TIME, SUMO_TAG_E3DETECTOR, SUMOReal, toString(), and WRITE_WARNING.
Referenced by MSE3Collector::MSE3EntryReminder::notifyMove().
int MSE3Collector::getCurrentHaltingNumber | ( | ) | const |
Returns the number of current haltings within the area.
If no vehicle is within the area, 0 is returned.
Definition at line 320 of file MSE3Collector.cpp.
References myCurrentHaltingsNumber.
Referenced by GUIE3Collector::MyWrapper::getParameterWindow(), and TraCIServerAPI_MeMeDetector::processGet().
SUMOReal MSE3Collector::getCurrentMeanSpeed | ( | ) | const |
Returns the mean speed within the area.
If no vehicle is within the area, -1 is returned.
Definition at line 314 of file MSE3Collector.cpp.
References myCurrentMeanSpeed.
Referenced by GUIE3Collector::MyWrapper::getParameterWindow(), and TraCIServerAPI_MeMeDetector::processGet().
std::vector< std::string > MSE3Collector::getCurrentVehicleIDs | ( | ) | const |
Returns the number of vehicles within the area.
Definition at line 332 of file MSE3Collector.cpp.
References myEnteredContainer.
Referenced by TraCIServerAPI_MeMeDetector::processGet().
|
inlineinherited |
Returns the id.
Definition at line 65 of file Named.h.
References Named::myID.
Referenced by NIImporter_SUMO::_loadNetwork(), MSVehicleTransfer::add(), TraCIServerAPI_Lane::StoringVisitor::add(), MSDetectorControl::add(), Named::StoringVisitor::add(), IntermodalRouter< E, L, N, V >::addAccess(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), MSNet::addBusStop(), MSNet::addChargingStation(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), MSNet::addContainerStop(), NIXMLConnectionsHandler::addCrossing(), RODFDetectorCon::addDetector(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), NBEdge::addRestrictedLane(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), ROVehicle::addStop(), MSVehicle::addStop(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciBusOrContainerStop(), MSVehicle::addTraciStop(), AGActivityTripWriter::addTrip(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSContainer::MSContainerStage_Driving::beginEventOutput(), MSContainer::MSContainerStage_Waiting::beginEventOutput(), MSPerson::MSPersonStage_Driving::beginEventOutput(), MSPerson::MSPersonStage_Waiting::beginEventOutput(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MS_E2_ZS_CollectorOverLanes::buildCollector(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), NIImporter_VISUM::buildDistrictNode(), NIVissimConnection::buildEdgeConnections(), RODFNet::buildEdgeFlowMap(), GNEConnector::buildIinternalLanes(), GNETLSEditor::buildIinternalLanes(), NBEdge::buildInnerEdges(), NGEdge::buildNBEdge(), NIVissimEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), NBEdge::checkGeometry(), MSVehicleTransfer::checkInsertions(), MSSwarmTrafficLightLogic::choosePolicy(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), NBNode::computeInternalLaneShape(), NBEdge::computeLaneShapes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNode::computeNodeShape(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), NLDetectorBuilder::convUncontE2PosLength(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), GUINet::createTLWrapper(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), NIVissimDistrictConnection::dict_BuildDistricts(), MSContainer::MSContainerStage_Driving::endEventOutput(), MSContainer::MSContainerStage_Waiting::endEventOutput(), MSPerson::MSPersonStage_Driving::endEventOutput(), MSPerson::MSPersonStage_Waiting::endEventOutput(), enter(), METriggeredCalibrator::execute(), MSCalibrator::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSTrafficLightLogic::SwitchCommand::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), TraCIServerAPI_Vehicle::findCloserLane(), NBRampsComputer::fulfillsRampConstraints(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSNet::getBusStopID(), MSNet::getChargingStationID(), NBEdge::getConnection(), MSNet::getContainerStopID(), NBEdge::getCrossingAngle(), GNEEdge::getDest(), RODFNet::getDetectorEdge(), MSMeanData::getEdgeID(), MSE2Collector::getEstimateQueueLength(), NBEdge::getFirstNonPedestrianLane(), MS_E2_ZS_CollectorOverLanes::getLanePredeccessorLanes(), MSTLLogicControl::TLSLogicVariants::getLogicInstantiatingOff(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), GUIInstantInductLoop::MyWrapper::getParameterWindow(), GUIMEInductLoop::MyWrapper::getParameterWindow(), GUI_E2_ZS_Collector::MyWrapper::getParameterWindow(), GUIVehicle::getParameterWindow(), GUIInductLoop::MyWrapper::getParameterWindow(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), NBNode::getPossiblySplittedIncoming(), NBNode::getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), GNEEdge::getSource(), MSVehicleControl::getWaitingVehicle(), MSLink::getZipperSpeed(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBEdgeCont::guessSidewalks(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollision(), NBEdgeCont::ignoreFilterMatch(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSActuatedTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NBEdgeCont::insert(), MSEdge::insertVehicle(), IntermodalNetwork< E, L, N, V >::IntermodalNetwork(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), RODFNet::isSource(), MSSOTLTrafficLightLogic::isThresholdPassed(), NBNodeCont::joinJunctions(), NBEdgeCont::joinSameNodeConnectingEdges(), leave(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), ODDistrictCont::makeDistricts(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), NBRampsComputer::moveRampRight(), MSPModel_Striping::PState::moveToNextLane(), MSCalibrator::MSCalibrator(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), NBLoadedTLDef::myCompute(), NIXMLEdgesHandler::myEndElement(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_Transportable::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Example::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSE2Collector::notifyMove(), GUIViewTraffic::onGamingClick(), RORouteHandler::openRoute(), Named::ComparatorIdLess::operator()(), NBTurningDirectionsComputer::combination_by_angle_sorter::operator()(), RODFNet::idComp::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBOwnTLDef::edge_by_incoming_priority_sorter::operator()(), NBContHelper::same_connection_edge_sorter::operator()(), NBContHelper::edge_by_angle_to_nodeShapeCentroid_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), MSEdge::by_id_sorter::operator()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_JE2013::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSRightOfWayJunction::postloadInit(), AGStreet::print(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_InductionLoop::processGet(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Person::processGet(), TraCIServerAPI_ArealDetector::processGet(), TraCIServerAPI_Lane::processGet(), TraCIServerAPI_Vehicle::processSet(), NIXMLNodesHandler::processTrafficLightDefinitions(), NWWriter_SUMO::prohibitionConnection(), MSPModel_Striping::PState::PState(), NBEdgeCont::recheckPostProcessConnections(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), NBLoadedSUMOTLDef::removeConnection(), NBNodeCont::removeIsolatedRoads(), MSCalibrator::removePending(), NBNode::removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::removeUnwishedNodes(), NBNodeCont::rename(), NBEdgeCont::rename(), GNENet::renameEdge(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), NBConnection::replaceFrom(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RODFNet::revalidateFlows(), RONet::saveAndRemoveRoutesUntil(), MSBaseVehicle::saveState(), MSLane::saveState(), MSDevice_Battery::setActualBatteryCapacity(), MSDevice_Battery::setAirDragCoefficient(), NBNodeCont::setAsTLControlled(), MSChargingStation::setChrgPower(), MSDevice_Battery::setConstantPowerIntake(), NBEdge::setControllingTLInformation(), MSChargingStation::setEfficency(), MSDevice_Battery::setFrontSurfaceArea(), MSDevice_Battery::setInternalMomentOfInertia(), GNEJunction::setLogicValid(), MSDevice_Battery::setMass(), MSDevice_Battery::setMaximumBatteryCapacity(), NIXMLEdgesHandler::setNodes(), MSDevice_Battery::setPowerMax(), MSDevice_Battery::setPropulsionEfficiency(), MSDevice_Battery::setRadialDragCoefficient(), MSDevice_Battery::setRecuperationEfficiency(), MSLink::setRequestInformation(), MSDevice_Battery::setRollDragCoefficient(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), NBEdgeCont::splitAt(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), METriggeredCalibrator::tryEmit(), MSSOTLTrafficLightLogic::trySwitch(), MSSOTLTrafficLightLogic::updateCTS(), GNETLSEditor::updateDescription(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), TraCIServerAPI_Vehicle::vtdMap(), MSPModel_Striping::PState::walk(), MSLCM_JE2013::wantsChange(), MSBatteryExport::write(), MSEmissionExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), NBSign::writeAsPOI(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_SUMO::writeInternalConnections(), writeInterval(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), MSInductLoop::writeTypedXMLOutput(), RODFDetectorCon::writeValidationDetectors(), MSFullExport::writeVehicles(), PointOfInterest::writeXML(), SUMO::Polygon::writeXML(), MSRouteProbe::writeXMLOutput(), and MSE2Collector::writeXMLOutput().
|
inlinestaticinherited |
get an identifier for Named-like object which may be Null
Definition at line 58 of file Named.h.
Referenced by operator<<(), and toString().
int MSE3Collector::getVehiclesWithin | ( | ) | const |
Returns the number of vehicles within the area.
Definition at line 326 of file MSE3Collector.cpp.
References myEnteredContainer.
Referenced by GUIE3Collector::MyWrapper::getParameterWindow(), and TraCIServerAPI_MeMeDetector::processGet().
void MSE3Collector::leave | ( | const SUMOVehicle & | veh, |
const SUMOReal | leaveTimestep, | ||
const SUMOReal | fractionTimeOnDet | ||
) |
Called if a vehicle passes a leave-cross-section.
Removes vehicle from internal containers.
[in] | veh | The vehicle that left the area |
[in] | leaveTimestep | The time in seconds the vehicle left the area |
[in] | fractionTimeOnDet | The interpolated time in seconds the vehicle still spent on the detector |
Definition at line 189 of file MSE3Collector.cpp.
References Named::getID(), SUMOVehicle::getID(), SUMOVehicle::getSpeed(), MSE3Collector::E3Values::intervalSpeedSum, MSE3Collector::E3Values::leaveTime, myEnteredContainer, myLeftContainer, MSE3Collector::E3Values::speedSum, SUMO_TAG_E3DETECTOR, SUMOReal, toString(), TS, and WRITE_WARNING.
Referenced by MSE3Collector::MSE3LeaveReminder::notifyMove().
|
private |
Invalidated assignment operator.
|
virtual |
Resets all generated values to allow computation of next interval.
Reimplemented from MSDetectorFileOutput.
Definition at line 156 of file MSE3Collector.cpp.
References myLeftContainer.
Referenced by MSE3Collector().
|
inlineinherited |
resets the id
[in] | newID | The new id of this object |
Definition at line 73 of file Named.h.
References Named::myID.
Referenced by NBNodeCont::rename(), and NBEdgeCont::rename().
|
virtual |
Opens the XML-output using "e3Detector" as root element.
The lists of entries/exists are written, too.
[in] | dev | The output device to write the root into |
IOError | If an error on writing occurs (!!! not yet implemented) |
Implements MSDetectorFileOutput.
Definition at line 276 of file MSE3Collector.cpp.
References OutputDevice::writeXMLHeader().
|
virtual |
Writes collected values into the given stream.
[in] | dev | The output device to write the data into |
[in] | startTime | First time step the data were gathered |
[in] | stopTime | Last time step the data were gathered |
IOError | If an error on writing occurs (!!! not yet implemented) |
Implements MSDetectorFileOutput.
Definition at line 205 of file MSE3Collector.cpp.
References MIN2(), myEnteredContainer, Named::myID, myLastResetTime, myLeftContainer, STEPS2TIME, SUMOReal, and time2string().
|
protected |
The current number of haltings (inside)
Definition at line 379 of file MSE3Collector.h.
Referenced by detectorUpdate(), and getCurrentHaltingNumber().
|
protected |
The current mean speed of known vehicles (inside)
Definition at line 376 of file MSE3Collector.h.
Referenced by detectorUpdate(), and getCurrentMeanSpeed().
|
protected |
Container for vehicles that have entered the area.
Definition at line 366 of file MSE3Collector.h.
Referenced by detectorUpdate(), enter(), getCurrentVehicleIDs(), getVehiclesWithin(), leave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyMove(), and writeXMLOutput().
|
protected |
The detector's entries.
Definition at line 320 of file MSE3Collector.h.
Referenced by GUIE3Collector::getEntries().
|
protected |
The detector's built entry reminder.
Definition at line 326 of file MSE3Collector.h.
Referenced by MSE3Collector(), and ~MSE3Collector().
|
protected |
The detector's exits.
Definition at line 323 of file MSE3Collector.h.
Referenced by GUIE3Collector::getExits().
|
protected |
Speed-threshold to determine if a vehicle is halting.
Definition at line 336 of file MSE3Collector.h.
Referenced by detectorUpdate(), and enter().
|
protected |
Definition at line 333 of file MSE3Collector.h.
Referenced by detectorUpdate(), and enter().
|
protectedinherited |
The name of the object.
Definition at line 133 of file Named.h.
Referenced by GUI_E2_ZS_CollectorOverLanes::buildCollector(), RODFDetector::buildDestinationDistribution(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), NBNode::computeNodeShape(), METriggeredCalibrator::execute(), MSCalibrator::execute(), Named::getID(), NBEdge::getLaneID(), NBEdge::getLaneIDInsecure(), ROEdge::getStoredEffort(), ROEdge::getTravelTime(), MSActuatedTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSCalibrator::init(), NBEdge::init(), MSCalibrator::myStartElement(), MSMeanData::openInterval(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), Named::setID(), MSSOTLTrafficLightLogic::setToATargetPhase(), NBEdge::splitGeometry(), RODFDetector::writeEmitterDefinition(), MSXMLRawOut::writeLane(), NBNode::writeLogic(), RODFDetector::writeSingleSpeedTrigger(), MEInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), and writeXMLOutput().
|
protected |
Information when the last reset has been done.
Definition at line 384 of file MSE3Collector.h.
Referenced by enter(), and writeXMLOutput().
|
protected |
The detector's built exit reminder.
Definition at line 329 of file MSE3Collector.h.
Referenced by MSE3Collector(), and ~MSE3Collector().
|
protected |
Container for vehicles that have left the area.
Definition at line 369 of file MSE3Collector.h.
Referenced by leave(), reset(), and writeXMLOutput().