75 double speed,
double departPos,
double arrivalPos,
double departPosLat);
165 inline const std::vector<const MSEdge*>::iterator
getRouteStep()
const {
250 const double arrivalPos,
const std::vector<std::string>& lines,
251 const std::string& intendedVeh =
"",
SUMOTime intendedDepart = -1);
290 const double arrivalPos,
const double dist,
const bool isExit);
413 return myLastRemoteAccess;
416 void postProcessRemoteControl(
MSPerson* p);
418 bool isRemoteControlled()
const;
420 bool isRemoteAffected(
SUMOTime t)
const;
SUMOTime myEstimatedArrival
ProceedCmd(MSTransportable *person, MSEdge *edge)
virtual void endEventOutput(const MSTransportable &p, SUMOTime t, OutputDevice &os) const
Called for writing the events output (end of an action)
virtual ~MSPerson()
destructor
void endEventOutput(const MSTransportable &, SUMOTime, OutputDevice &) const
Called on writing events output (end of an action). Currently does nothing.
void setRemoteState(Position xyPos)
sets position outside the road network
SUMOTime getLastAccessTimeStep() const
A lane area vehicles can halt at.
arrival_finder(SUMOTime time)
constructor
MSEdge * myCurrentInternalEdge
The current internal edge this person is on or 0.
bool hasInfluencer() const
void beginEventOutput(const MSTransportable &, SUMOTime, OutputDevice &) const
Called on writing events output (begin of an action). Currently does nothing.
double getDepartPos() const
const MSEdge * getEdge() const
Returns the current edge.
Position getPosition(SUMOTime now) const
returns the position of the transportable
const std::string & getNextEdge() const
return the list of internal edges if this person is walking and the pedestrian model allows it ...
double getDistance() const
get travel distance in this stage
MSTransportable *const myPerson
std::vector< const MSEdge * > ConstMSEdgeVector
SUMOTime myLastRemoteAccess
Base (microsim) event class.
std::vector< const MSEdge * > ConstMSEdgeVector
The simulated network and simulation perfomer.
The car-following model and parameter.
PedestrianState * getPedestrianState() const
The pedestrian following model.
std::string getStageSummary() const
return string summary of the current stage
virtual void beginEventOutput(const MSTransportable &p, SUMOTime t, OutputDevice &os) const
Called for writing the events output.
virtual void proceed(MSNet *net, MSTransportable *person, SUMOTime now, Stage *previous)
proceeds to the next step
ConstMSEdgeVector myRoute
The route of the person.
A road/street connecting two junctions.
std::vector< MSTransportable::Stage * > MSTransportablePlan
the structure holding the plan of a transportable
void abort(MSTransportable *)
abort this stage (TraCI)
Influencer & getInfluencer()
Returns the velocity/lane influencer.
virtual bool isSelected() const
whether this person is selected in the GUI
Representation of a vehicle.
MSPersonStage_Walking & operator=(const MSPersonStage_Walking &)
Invalidated assignment operator.
A point in 2D or 3D with translation and scaling methods.
ConstMSEdgeVector getEdges() const
the edges of the current stage
void routeOutput(OutputDevice &, const bool) const
Called on writing vehroute output. Currently does nothing.
double getAngle(SUMOTime now) const
returns the angle of the transportable
virtual void routeOutput(OutputDevice &os, const bool withRouteLength) const
Called on writing vehroute output.
double getMaxSpeed(const MSTransportable *const person) const
accessors to be used by MSPModel
double getDistance() const
get travel distance in this stage
ConstMSEdgeVector::iterator myRouteStep
void setSpeed(double speed)
sets the walking speed (ignored in other stages)
double getArrivalPos() const
const ConstMSEdgeVector & getRoute() const
MSPerson(const SUMOVehicleParameter *pars, MSVehicleType *vtype, MSTransportable::MSTransportablePlan *plan, const double speedFactor)
constructor
abstract base class for managing callbacks to retrieve various state information from the model ...
const std::vector< const MSEdge * >::iterator getRouteStep() const
Changes the wished person speed and position.
double computeAverageSpeed() const
double getSpeedFactor() const
the current speed factor of the transportable (where applicable)
Structure representing possible vehicle parameter.
SUMOTime getWaitingTime(SUMOTime now) const
the time this transportable spent waiting
ConstMSEdgeVector myRemoteRoute
void reroute(ConstMSEdgeVector &newEdges, double departPos, int firstIndex, int nextIndex)
set new walk and replace the stages with relative indices in the interval [firstIndex, nextIndex[
SUMOTime myTime
the searched arrival time
const double myChosenSpeedFactor
SUMOTime myWalkingTime
the time the person is walking
double getSpeed() const
the speed of the transportable
bool moveToNextEdge(MSPerson *person, SUMOTime currentTime, MSEdge *nextInternal=nullptr)
move forward and return whether the person arrived
~MSPersonStage_Walking()
destructor
std::string getStageDescription() const
return (brief) string representation of the current stage
MSPersonStage_Walking(const std::string &personID, const ConstMSEdgeVector &route, MSStoppingPlace *toStop, SUMOTime walkingTime, double speed, double departPos, double arrivalPos, double departPosLat)
constructor
PedestrianState * myPedestrianState
state that is to be manipulated by MSPModel
static DummyState myDummyState
const MSEdge * getNextEdgePtr() const
returns the next edge ptr if this person is walking and the pedestrian model allows it ...
Static storage of an output device and its base (abstract) implementation.
bool operator()(double t) const
comparison operator
const MSEdge * getRouteEdge() const
SUMOTime myLastEdgeEntryTime
the time the person entered the edge
const MSEdge * getNextRouteEdge() const
double walkDistance() const
compute total walking distance
Influencer * myInfluencer
An instance of a speed/position influencing instance; built in "getInfluencer".
Representation of a lane in the micro simulation.
const MSEdge * getFromEdge() const
double getEdgePos(SUMOTime now) const
virtual void tripInfoOutput(OutputDevice &os, const MSTransportable *const transportable) const
Called on writing tripinfo output.
double myArrivalPos
the position at which we want to arrive
double getDepartPosLat() const
void setRouteIndex(MSPerson *person, int routeOffset)
place person on a previously passed edge