21 package org.matsim.core.mobsim.qsim.qnetsimengine;
23 import java.util.ArrayList;
24 import java.util.Collection;
25 import java.util.Collections;
27 import org.apache.logging.log4j.LogManager;
28 import org.apache.logging.log4j.Logger;
67 this.
id = basicVehicle.
getId();
68 this.vehicle = basicVehicle;
69 this.passengers =
new ArrayList<>();
72 if (capacity == null) {
73 this.passengerCapacity = 4;
75 log.warn(
"No VehicleCapacity (= maximum number of passengers) set in Vehicle. " 76 +
"Using default value of 4. This is only a problem if you need vehicles with different " 77 +
"capacities, e.g. for minibuses.");
79 if ( warnCount == 10 ) {
87 this.passengerCapacity = capacity.
getSeats() +
88 (capacity.getStandingRoom() == null ? 0 : capacity.getStandingRoom());
94 this.currentLink = link;
134 this.earliestLinkExitTime = time;
145 return (MobsimDriverAgent) this.
driver;
146 }
else if ( this.driver==null ) {
149 throw new RuntimeException(
"error (downstream methods need to be made to accept DriverAgent)") ;
154 if (driver != null) {
155 if (this.driver != null && !this.driver.
getId().equals(driver.
getId())) {
157 "is already set in vehicle " + this.
getId() +
". " +
158 "Setting agent " + driver.
getId().toString() +
" is not possible!");
187 return "Vehicle Id " +
getId() +
", driven by (personId) " + this.driver.
getId()
188 +
", on link " + this.currentLink.
getId();
197 return Collections.unmodifiableCollection(this.passengers);
203 return this.passengers.add(passenger);
210 return this.passengers.remove(passenger);
MobsimDriverAgent getDriver()
void setDriver(final DriverAgent driver)
boolean addPassenger(PassengerAgent passenger)
final int passengerCapacity
final double getMaximumVelocity()
double earliestLinkExitTime
static final String FUTURE_SUPPRESSED
final double getPcuEquivalents()
void setCurrentLink(final Link link)
boolean removePassenger(PassengerAgent passenger)
final VehicleCapacity getCapacity()
Collection<? extends PassengerAgent > getPassengers()
Collection< PassengerAgent > passengers
QVehicleImpl(final Vehicle basicVehicle)
double getEarliestLinkExitTime()
double getSizeInEquivalents()
double getMaximumVelocity()
final void setLinkEnterTime(double linkEnterTime)
final double getLinkEnterTime()
void setEarliestLinkExitTime(final double time)
int getPassengerCapacity()