121 virtual bool isWaitingFor(
const std::string& line)
const;
272 inline const std::vector<const MSEdge*>&
getRoute()
const {
345 const std::vector<std::string>& lines);
541 const std::string&
getID()
const;
555 return (*myStep)->getDestination();
560 return (*myStep)->getEdge();
565 return (*myStep)->getFromEdge();
585 return (*myStep)->getStageType();
590 return (*myStep)->getStageDescription();
613 return (*myStep)->isWaitingFor(line);
618 return (*myStep)->isWaiting4Vehicle();
virtual void routeOutput(OutputDevice &os) const =0
Called on writing vehroute output.
SUMOTime getUntil() const
SUMOReal getAngle(SUMOTime now) const
const std::string & getID() const
returns the person id
const MSEdge * myWaitingEdge
virtual void beginEventOutput(const MSPerson &p, SUMOTime t, OutputDevice &os) const
Called for writing the events output.
SUMOTime myArrived
the time at which this stage ended
const MSEdge * getFromEdge() const
SUMOTime getDesiredDepart() const
Returns the desired departure time.
virtual ~MSPerson()
destructor
const SUMOVehicleParameter * myParameter
the plan of the person
SUMOTime getWaitingTime(SUMOTime now) const
the time this person spent waiting
bool myWriteEvents
Whether events shall be written.
const MSEdge * getNextRouteEdge() const
const MSEdge & getDestination() const
returns the destination edge
Position getLanePosition(const MSLane *lane, SUMOReal at, SUMOReal offset) const
get position on lane at length at with orthogonal offset
const MSVehicleType & getVehicleType() const
SUMOReal getSpeed() const
the time this person spent waiting
void setDeparted(SUMOTime now)
logs end of the step
bool isWaitingFor(const std::string &line) const
Whether the person waits for a vehicle of the line specified.
arrival_finder(SUMOTime time)
constructor
virtual Position getPosition() const
return the Network coordinate of the person
MSPersonStage(const MSEdge &destination, StageType type)
constructor
MSEdge * myCurrentInternalEdge
The current internal edge this person is on or 0.
const MSEdge * getEdge() const
Returns the current edge.
bool isWaiting4Vehicle() const
Whether the person waits for a vehicle.
std::vector< const MSEdge * > myRoute
The route of the person.
const MSEdge * getEdge() const
Returns the current edge.
const MSEdge * getFromEdge() const
Returns the departure edge.
virtual bool isWaitingFor(const std::string &line) const
Whether the person waits for a vehicle of the line specified.
StageType getCurrentStageType() const
virtual void beginEventOutput(const MSPerson &p, SUMOTime t, OutputDevice &os) const
Called for writing the events output.
void setDeparted(SUMOTime now)
logs end of the step
virtual SUMOReal getWaitingSeconds() const
the time this person spent waiting in seconds
SUMOTime myWaitingSince
The time since which this person is waiting for a ride.
Position getPosition(SUMOTime now) const
virtual void tripInfoOutput(OutputDevice &os) const
Called on writing tripinfo output.
virtual bool isWaiting4Vehicle() const
Whether the person waits for a vehicle.
const std::set< std::string > myLines
the lines to choose from
bool isWaiting4Vehicle() const
Whether the person waits for a vehicle.
SUMOReal getEdgePos(SUMOTime now) const
SUMOTime myWaitingUntil
the time until the person is waiting
virtual void routeOutput(OutputDevice &os) const
Called on writing vehroute output.
const MSVehicleType * myVType
This Persons's type. (mainly used for drawing related information.
MSPersonStage & operator=(const MSPersonStage &)
Invalidated assignment operator.
SUMOReal getEdgeAngle(const MSEdge *e, SUMOReal at) const
virtual const MSEdge * getEdge() const =0
Returns the current edge.
virtual void tripInfoOutput(OutputDevice &os) const
Called on writing tripinfo output.
virtual void proceed(MSNet *net, MSPerson *person, SUMOTime now, MSEdge *previousEdge, const SUMOReal at)
proceeds to the next step
The simulated network and simulation perfomer.
SUMOReal getEdgePos(SUMOTime now) const
The car-following model and parameter.
const MSEdge & getDestination() const
Returns the current destination.
const SUMOVehicleParameter & getParameter() const
MSPersonStage_Walking(const std::vector< const MSEdge * > &route, MSBusStop *toBS, SUMOTime walkingTime, SUMOReal speed, SUMOReal departPos, SUMOReal arrivalPos)
constructor
const MSEdge * getEdge() const
Returns the current edge.
The pedestrian following model.
MSBusStop * myDestinationBusStop
const std::vector< const MSEdge * > & getRoute() const
virtual SUMOTime getWaitingTime(SUMOTime now) const =0
the time this person spent waiting
A road/street connecting two junctions.
Position getEdgePosition(const MSEdge *e, SUMOReal at, SUMOReal offset) const
get position on edge e at length at with orthogonal offset
std::string getCurrentStageDescription() const
MSPersonPlan * myPlan
the plan of the person
void routeOutput(OutputDevice &os) const
Called on writing vehroute output.
virtual void proceed(MSNet *net, MSPerson *person, SUMOTime now, MSEdge *previousEdge, const SUMOReal at)=0
proceeds to the next step
bool moveToNextEdge(MSPerson *person, SUMOTime currentTime, MSEdge *nextInternal=0)
move forward and return whether the person arrived
SUMOReal getEdgePos(SUMOTime now) const
PedestrianState * getPedestrianState() const
Representation of a vehicle.
SUMOTime myDeparted
the time at which this stage started
MSPersonStage_Walking & operator=(const MSPersonStage_Walking &)
Invalidated assignment operator.
std::vector< const MSEdge * > MSEdgeVector
virtual SUMOReal getAngle(SUMOTime now) const =0
A point in 2D or 3D with translation and scaling methods.
virtual void beginEventOutput(const MSPerson &p, SUMOTime t, OutputDevice &os) const =0
Called for writing the events output (begin of an action)
SUMOReal getAngle(SUMOTime now) const
SUMOReal getSpeed() const
the time this person spent waiting
A lane area vehicles can halt at.
virtual void endEventOutput(const MSPerson &p, SUMOTime t, OutputDevice &os) const =0
Called for writing the events output (end of an action)
SUMOReal computeAverageSpeed() const
MSPersonStage * getCurrentStage() const
~MSPersonStage_Driving()
destructor
virtual void tripInfoOutput(OutputDevice &os) const =0
Called on writing tripinfo output.
SUMOTime myWaitingDuration
the time the person is waiting
virtual void endEventOutput(const MSPerson &p, SUMOTime t, OutputDevice &os) const
Called for writing the events output (end of an action)
Position getPosition(SUMOTime now) const
virtual const MSEdge * getFromEdge() const =0
virtual void proceed(MSNet *net, MSPerson *person, SUMOTime now, MSEdge *previousEdge, const SUMOReal at)
proceeds to the next step
virtual SUMOReal getSpeed() const =0
the time this person spent waiting
std::vector< const MSEdge * >::iterator myRouteStep
virtual void routeOutput(OutputDevice &os) const
Called on writing vehroute output.
std::string myActType
The type of activity.
MSPerson & operator=(const MSPerson &)
Invalidated assignment operator.
MSPersonStage_Driving & operator=(const MSPersonStage_Driving &)
Invalidated assignment operator.
const MSEdge * getFromEdge() const
const MSEdge * getRouteEdge() const
virtual SUMOReal getAngle() const
return the current angle of the person
bool operator()(SUMOReal t) const
comparison operator
void setVehicle(SUMOVehicle *v)
SUMOTime getWaitingTime(SUMOTime now) const
the time this person spent waiting
bool isWaitingFor(const std::string &line) const
Whether the person waits for a vehicle of the line specified.
MSPersonStage_Waiting(const MSEdge &destination, SUMOTime duration, SUMOTime until, SUMOReal pos, const std::string &actType)
constructor
std::string getStageDescription() const
return string representation of the current stage
abstract base class for managing callbacks to retrieve various state information from the model ...
virtual SUMOReal getEdgePos(SUMOTime now) const =0
SUMOReal getArrivalPos() const
SUMOReal getAngle(SUMOTime now) const
MSPerson(const SUMOVehicleParameter *pars, const MSVehicleType *vtype, MSPersonPlan *plan)
constructor
virtual void beginEventOutput(const MSPerson &p, SUMOTime t, OutputDevice &os) const
Called for writing the events output.
virtual Position getPosition(SUMOTime now) const =0
const MSEdge * getEdge() const
Returns the current edge.
Structure representing possible vehicle parameter.
virtual void routeOutput(OutputDevice &os) const
Called on writing vehroute output.
virtual void endEventOutput(const MSPerson &p, SUMOTime t, OutputDevice &os) const
Called for writing the events output (end of an action)
virtual std::string getStageDescription() const =0
return string representation of the current stage
void tripInfoOutput(OutputDevice &os) const
Called on writing tripinfo output.
SUMOTime myTime
the searched arrival time
SUMOTime myWaitingStart
the time the person is waiting
MSPersonStage_Waiting & operator=(const MSPersonStage_Waiting &)
Invalidated assignment operator.
MSPersonPlan::iterator myStep
the iterator over the route
SUMOTime myWalkingTime
the time the person is walking
SUMOReal getDepartPos() const
~MSPersonStage_Walking()
destructor
~MSPersonStage_Waiting()
destructor
StageType myType
The type of this stage.
Position getPosition(SUMOTime now) const
std::string getStageDescription() const
return string representation of the current stage
PedestrianState * myPedestrianState
state that is to be manipulated by MSPModel
bool proceed(MSNet *net, SUMOTime time)
MSPersonStage_Driving(const MSEdge &destination, MSBusStop *toBS, const std::vector< std::string > &lines)
constructor
virtual SUMOReal getSpeed() const
the current speed of the person
SUMOTime getWaitingTime(SUMOTime now) const
time spent waiting for a ride
virtual void endEventOutput(const MSPerson &p, SUMOTime t, OutputDevice &os) const
Called for writing the events output (end of an action)
const MSEdge * getFromEdge() const
MSBusStop * myDestinationBusStop
virtual SUMOReal getEdgePos() const
return the offset from the start of the current edge
Static storage of an output device and its base (abstract) implementation.
virtual void proceed(MSNet *net, MSPerson *person, SUMOTime now, MSEdge *previousEdge, const SUMOReal at)
proceeds to the next step
const MSEdge & myDestination
the next edge to reach (either by walking or driving)
virtual ~MSPersonStage()
destructor
SUMOReal myDepartPos
A vector of computed times an edge is reached.
SUMOVehicle * myVehicle
The taken vehicle.
SUMOReal getMaxSpeed() const
accessors to be used by MSPModel
SUMOReal getSpeed() const
the time this person spent waiting
void setArrived(SUMOTime now)
logs end of the step
Representation of a lane in the micro simulation.
std::vector< MSPersonStage * > MSPersonPlan
the structure holding the plan of a person
std::string getStageDescription() const
return string representation of the current stage
virtual void tripInfoOutput(OutputDevice &os) const
Called on writing tripinfo output.
StageType getStageType() const