72 const std::string& vTypes,
const SUMOReal departPos,
const SUMOReal arrivalPos,
const std::string& busStop);
74 void addRide(
const ROEdge*
const from,
const ROEdge*
const to,
const std::string& lines,
const std::string& destStop);
77 const SUMOReal departPos,
const SUMOReal arrivalPos,
const std::string& busStop);
113 : stopDesc(stop), edge(stopEdge) {}
158 const std::string& _lines,
const std::string& _destStop =
"")
159 : from(_from), to(_to), lines(_lines), destStop(_destStop) {}
188 : edges(_edges), dur(-1), v(-1), dep(std::numeric_limits<
SUMOReal>::infinity()), arr(std::numeric_limits<
SUMOReal>::infinity()), destStop(_destStop) {}
190 const SUMOReal departPos,
const SUMOReal arrivalPos,
const std::string& _destStop)
191 : edges(edges), dur(duration), v(speed), dep(departPos), arr(arrivalPos), destStop(_destStop) {}
193 return edges.front();
218 : from(0), to(0), modes(
SVC_PEDESTRIAN), dep(0), arr(0), busStop(
"") {}
220 const SUMOReal departPos,
const SUMOReal arrivalPos,
const std::string& busStop)
221 : from(from), to(to), modes(modeSet), dep(departPos), arr(arrivalPos), busStop(busStop) {}
224 for (std::vector<TripItem*>::const_iterator it = myTripItems.begin(); it != myTripItems.end(); ++it) {
227 for (std::vector<ROVehicle*>::const_iterator it = myVehicles.begin(); it != myVehicles.end(); ++it) {
228 delete(*it)->getRouteDefinition();
234 myTripItems.push_back(tripIt);
237 myVehicles.push_back(veh);
243 return from != 0 ? from : myTripItems.front()->getOrigin();
246 return to != 0 ? to : myTripItems.back()->getDestination();
258 return myTripItems.empty();
262 for (std::vector<TripItem*>::const_iterator it = myTripItems.begin(); it != myTripItems.end(); ++it) {
263 (*it)->saveAsXML(os);
290 return myPlan.front()->getOrigin();
295 const bool removeLoops,
MsgHandler* errorHandler);
const ROEdge * getOrigin() const
void saveAsXML(OutputDevice &os) const
void addRide(const ROEdge *const from, const ROEdge *const to, const std::string &lines, const std::string &destStop)
virtual void saveAsXML(OutputDevice &os) const =0
void addVehicle(ROVehicle *veh)
SUMOReal getArrivalPos() const
Structure representing possible vehicle parameter.
virtual bool needsRouting() const
const SVCPermissions modes
A planItem can be a Stop.
std::vector< ROVehicle * > myVehicles
the vehicles which may be used for routing
void addWalk(const ConstROEdgeVector &edges, const SUMOReal duration, const SUMOReal speed, const SUMOReal departPos, const SUMOReal arrivalPos, const std::string &busStop)
bool computeIntermodal(const RORouterProvider &provider, PersonTrip *const trip, const ROVehicle *const veh, MsgHandler *const errorHandler)
const ROEdge * getDestination() const
SUMOReal getDepartPos() const
std::vector< const ROEdge * > ConstROEdgeVector
virtual bool needsRouting() const
Every person has a plan comprising of multiple planItems.
const ROEdge * getDestination() const
A planItem can be a Trip which contains multiple tripItems.
virtual ~PlanItem()
Destructor.
A routable thing such as a vehicle or person.
A ride is part of a trip, e.g., go from here to here by car or bus.
A vehicle as used by router.
ROPerson & operator=(const ROPerson &src)
Invalidated assignment operator.
Walk(const ConstROEdgeVector &edges, const SUMOReal duration, const SUMOReal speed, const SUMOReal departPos, const SUMOReal arrivalPos, const std::string &_destStop)
std::vector< PlanItem * > myPlan
The plan of the person.
SUMOVehicleParameter::Stop stopDesc
std::vector< PlanItem * > & getPlan()
const ROEdge * getDestination() const
virtual void addTripItem(TripItem *)
virtual bool isStop() const
void addStop(const SUMOVehicleParameter::Stop &stopPar, const ROEdge *const stopEdge)
void addTrip(const ROEdge *const from, const ROEdge *const to, const SVCPermissions modeSet, const std::string &vTypes, const SUMOReal departPos, const SUMOReal arrivalPos, const std::string &busStop)
const ROEdge * getOrigin() const
const ROEdge * getOrigin() const
A person as used by router.
PersonTrip(const ROEdge *const from, const ROEdge *const to, const SVCPermissions modeSet, const SUMOReal departPos, const SUMOReal arrivalPos, const std::string &busStop)
void saveAsXML(OutputDevice &os) const
A TripItem is part of a trip, e.g., go from here to here by car.
A walk is part of a trip, e.g., go from here to here by foot.
A basic edge for routing applications.
virtual const ROEdge * getDestination() const =0
virtual ~ROPerson()
Destructor.
std::vector< TripItem * > myTripItems
the fully specified trips
const ROEdge * getDestination() const
ROPerson(const SUMOVehicleParameter &pars, const SUMOVTypeParameter *type)
Constructor.
virtual ~PersonTrip()
Destructor.
SVCPermissions getModes() const
const ROEdge * getOrigin() const
void computeRoute(const RORouterProvider &provider, const bool removeLoops, MsgHandler *errorHandler)
Structure representing possible vehicle parameter.
const std::string destStop
Definition of vehicle stop (position and duration)
A storage for options typed value containers)
virtual void saveVehicles(OutputDevice &, OutputDevice *const , bool, OptionsCont &) const
const std::string destStop
Walk(const ConstROEdgeVector &_edges, const std::string &_destStop="")
Static storage of an output device and its base (abstract) implementation.
const ConstROEdgeVector edges
std::vector< ROVehicle * > & getVehicles()
virtual void addTripItem(TripItem *tripIt)
const ROEdge * getDepartEdge() const
Returns the first edge the person takes.
Stop(const SUMOVehicleParameter::Stop &stop, const ROEdge *const stopEdge)
virtual const ROEdge * getOrigin() const =0
Ride(const ROEdge *const _from, const ROEdge *const _to, const std::string &_lines, const std::string &_destStop="")
virtual ~TripItem()
Destructor.
const std::string busStop