42 #ifdef CHECK_MEMORY_LEAKS 44 #endif // CHECK_MEMORY_LEAKS 46 #define NOT_ARRIVED TIME2STEPS(-1) 71 into.push_back(device);
128 const SUMOReal meanSpeedVehicleOnLane,
186 finalPosOnInternal = finalPos;
232 os.
writeAttr(
"routeLength", routeLength);
237 std::ostringstream str;
238 for (std::vector<MSDevice*>::const_iterator i = devices.begin(); i != devices.end(); ++i) {
239 if (i != devices.begin()) {
242 str << (*i)->getID();
286 std::ostringstream msg;
289 msg <<
"Statistics (avg):\n" const MSLane * getLane() const
Returns the lane the reminder works on.
SUMOTime myArrivalTime
The vehicle's arrival time.
OutputDevice & writeAttr(const SumoXMLAttr attr, const T &val)
writes a named attribute
MSEdge & getEdge() const
Returns the lane's edge.
Representation of a vehicle in the micro simulation.
virtual bool hasDeparted() const =0
Returns whether this vehicle has departed.
static SUMOTime myTotalWaitingTime
void computeLengthAndDuration(SUMOReal &routeLength, SUMOTime &duration) const
static SUMOReal getAvgDepartDelay()
virtual const MSRoute & getRoute() const =0
Returns the current route.
void notifyMoveInternal(const SUMOVehicle &veh, const SUMOReal frontOnLane, const SUMOReal timeOnLane, const SUMOReal meanSpeedFrontOnLane, const SUMOReal meanSpeedVehicleOnLane, const SUMOReal travelledDistanceFrontOnLane, const SUMOReal travelledDistanceVehicleOnLane)
Internal notification about the vehicle moves, see MSMoveReminder::notifyMoveInternal() ...
A device which collects info on the vehicle trip (mainly on departure and arrival) ...
SUMOVehicle & myHolder
The vehicle that stores the device.
virtual SUMOReal getDepartPos() const =0
Returns this vehicle's real departure position.
virtual SUMOReal getPositionOnLane() const =0
Get the vehicle's position along the lane.
virtual const MSEdge * getEdge() const =0
Returns the edge the vehicle is currently at.
static void buildVehicleDevices(SUMOVehicle &v, std::vector< MSDevice *> &into)
Build devices for the given vehicle, if needed.
Notification
Definition of a vehicle state.
std::string time2string(SUMOTime t)
SUMOTime myTimeLoss
The time loss when compared to the desired and allowed speed.
static MSNet * getInstance()
Returns the pointer to the unique instance of MSNet (singleton).
SUMOReal myArrivalPos
The position on the lane the vehicle arrived at.
~MSDevice_Tripinfo()
Destructor.
The vehicle got vaporized.
const std::string & getID() const
Returns the id.
bool notifyMove(SUMOVehicle &veh, SUMOReal oldPos, SUMOReal newPos, SUMOReal newSpeed)
Checks for waiting steps when the vehicle moves.
static OptionsCont & getOptions()
Retrieves the options.
SUMOReal myDepartSpeed
The speed on departure.
SUMOReal myArrivalSpeed
The speed when arriving.
SUMOTime myWaitingTime
The overall waiting time.
SUMOReal myArrivalPosLat
The lateral position on the lane the vehicle arrived at.
static DeviceSet myPendingOutput
static SUMOReal getAvgRouteLength()
accessors for GUINet-Parameters
SUMOReal getDistanceBetween(SUMOReal fromPos, SUMOReal toPos, const MSEdge *fromEdge, const MSEdge *toEdge, bool includeInternal=true) const
Compute the distance between 2 given edges on this route, including the length of internal lanes...
bool notifyEnter(SUMOVehicle &veh, MSMoveReminder::Notification reason)
Saves departure info on insertion.
SUMOReal getVehicleMaxSpeed(const SUMOVehicle *const veh) const
Returns the maximum speed the vehicle may use on this edge.
virtual const std::vector< MSDevice * > & getDevices() const =0
Returns this vehicle's devices.
static SUMOReal getAvgDuration()
static void generateOutputForUnfinished()
generate output for vehicles which are still in the network
SUMOReal myDepartPosLat
The lateral depart position.
static std::string printStatistics()
get statistics for printing to stdout
Representation of a vehicle.
virtual int getNumberReroutes() const =0
Returns the number of new routes this vehicle got.
static SUMOReal getAvgWaitingTime()
static SUMOTime myTotalDuration
static SUMOReal myTotalRouteLength
The vehicle arrived at its destination (is deleted)
SUMOTime getCurrentTimeStep() const
Returns the current simulation step.
bool hasInternalLinks() const
return whether the network contains internal links
static bool gUsingInternalLanes
Information whether the simulation regards internal lanes.
static SUMOReal myVehicleCount
global tripinfo statistics
bool isInternal() const
return whether this edge is an internal edge
std::string myDepartLane
The lane the vehicle departed at.
Abstract in-vehicle device.
virtual SUMOTime getDepartDelay() const =0
The vehicle has departed (was inserted into the network)
virtual SUMOReal getSpeed() const =0
Returns the vehicle's current speed.
std::string myArrivalLane
The lane the vehicle arrived at.
void updateStatistics() const
update tripinfo statistics
virtual SUMOTime getDeparture() const =0
Returns this vehicle's real departure time.
static OutputDevice & getDeviceByOption(const std::string &name)
Returns the device described by the option.
MSDevice_Tripinfo()
dummy constructor
static SUMOTime myTotalDepartDelay
SUMOReal getLength() const
return the length of the edge
static SUMOReal gLateralResolution
const std::string & getID() const
Returns the name of the vehicle type.
const SUMOReal SUMO_const_haltingSpeed
the speed threshold at which vehicles are considered as halting
virtual SUMOTime getWaitingTime() const =0
static SUMOReal getAvgTimeLoss()
virtual bool isStopped() const =0
Returns whether the vehicle is at a stop.
Static storage of an output device and its base (abstract) implementation.
bool notifyLeave(SUMOVehicle &veh, SUMOReal lastPos, MSMoveReminder::Notification reason)
Saves arrival info.
bool closeTag()
Closes the most recently opened tag.
std::set< const MSDevice_Tripinfo *, Named::NamedLikeComparatorIdLess< MSDevice_Tripinfo > > DeviceSet
devices which may still need to produce output
MSRouteIterator begin() const
Returns the begin of the list of edges to pass.
void generateOutput() const
Called on writing tripinfo output.
static SUMOTime myTotalTimeLoss
virtual const ConstMSEdgeVector::const_iterator & getCurrentRouteEdge() const =0
Returns an iterator pointing to the current edge in this vehicles route.
virtual SUMOReal getArrivalPos() const =0
Returns this vehicle's desired arrivalPos for its current route (may change on reroute) ...
Representation of a lane in the micro simulation.
MSRouteIterator end() const
Returns the end of the list of edges to pass.
virtual const std::string & getID() const =0
Get the vehicle's ID.
OutputDevice & openTag(const std::string &xmlElement)
Opens an XML tag.
virtual const MSVehicleType & getVehicleType() const =0
Returns the vehicle's type.