22 #ifndef MSVehicleType_h 23 #define MSVehicleType_h void setMinGap(const double &minGap)
Set a new value for this type's minimum gap.
double getLengthWithGap() const
Get vehicle's length including the minimum gap [m].
SUMOVehicleShape getGuiShape() const
Get this vehicle type's shape.
double impatience
The vehicle's impatience (willingness to obstruct others)
MSCFModel & getCarFollowModel()
Returns the vehicle type's car following model definition (non-const version)
void setDefaultProbability(const double &prob)
Set a new value for this type's default probability.
SUMOVehicleClass
Definition of vehicle classes to differ between different lane usage and authority types...
void setShape(SUMOVehicleShape shape)
Set a new value for this type's shape.
SUMOVehicleShape shape
This class' shape.
Structure representing possible vehicle parameter.
LateralAlignment getPreferredLateralAlignment() const
Get vehicle's preferred lateral alignment.
double defaultProbability
The probability when being added to a distribution without an explicit probability.
The car-following model abstraction.
int containerCapacity
The container capacity of the vehicle.
std::string getImgFile() const
Get this vehicle type's raster model file name.
SUMOVehicleClass vehicleClass
The vehicle's class.
MSVehicleType & operator=(const MSVehicleType &)
Invalidated assignment operator.
int getNumericalID() const
Returns the running index of the vehicle type.
double getMinGapLat() const
Get the minimum lateral gap that vehicles of this type maintain.
const MSVehicleType * myOriginalType
The original type.
void setLength(const double &length)
Set a new value for this type's length.
void setMaxSpeed(const double &maxSpeed)
Set a new value for this type's maximum speed.
int getPersonCapacity() const
Get this vehicle type's person capacity.
MSVehicleType * duplicateType(const std::string &id, bool persistent) const
Duplicates the microsim vehicle type giving the newly created type the given id.
int getContainerCapacity() const
Get this vehicle type's container capacity.
static MSVehicleType * build(SUMOVTypeParameter &from)
Builds the microsim vehicle type described by the given parameter.
LateralAlignment
Numbers representing special SUMO-XML-attribute values Information how vehicles align themselves with...
The car-following model and parameter.
double height
This class' height.
SUMOTime getBoardingDuration() const
Get this vehicle type's boarding duration.
const int myIndex
the running index
bool isVehicleSpecific() const
Returns whether this type belongs to a single vehicle only (was modified)
bool wasSet(int what) const
Returns whether the given parameter was set.
double getDefaultProbability() const
Get the default probability of this vehicle type.
void setMinGapLat(const double &minGapLat)
Set a new value for this type's minimum lataral gap.
LaneChangeModel getLaneChangeModel() const
double maxSpeed
The vehicle type's maximum speed [m/s].
double width
This class' width.
const MSCFModel & getCarFollowModel() const
Returns the vehicle type's car following model definition (const version)
SUMOTime boardingDuration
The time a person needs to board the vehicle.
void check()
Checks whether vehicle type parameters may be problematic (Currently, only the value for the action s...
MSVehicleType * buildSingularType(const std::string &id) const
Duplicates the microsim vehicle type giving the newly created type the given id, marking it as vehicl...
std::string osgFile
3D model file for this class
SUMOTime getLoadingDuration() const
Get this vehicle type's loading duration.
void setHeight(const double &height)
Set a new value for this type's height.
std::string imgFile
Image file for this class.
virtual ~MSVehicleType()
Destructor.
double getMaxSpeed() const
Get vehicle's maximum speed [m/s].
SUMOTime getActionStepLength() const
Returns this type's default action step length.
void setImpatience(const double impatience)
Set a new value for this type's impatience.
void setEmissionClass(SUMOEmissionClass eclass)
Set a new value for this type's emission class.
double getMinGap() const
Get the free space in front of vehicles of this class.
void setSpeedDeviation(const double &dev)
Set a new value for this type's speed deviation.
void setSpeedFactor(const double &factor)
Set a new value for this type's speed factor.
const SUMOVTypeParameter & getParameter() const
const RGBColor & getColor() const
Returns this type's color.
void setActionStepLength(const SUMOTime actionStepLength, bool resetActionOffset)
Set a new value for this type's action step length.
double maxSpeedLat
The vehicle type's maximum lateral speed [m/s].
int parametersSet
Information for the router which parameter were set.
SUMOVTypeParameter myParameter
the parameter container
double getMaxSpeedLat() const
Get vehicle's maximum lateral speed [m/s].
int personCapacity
The person capacity of the vehicle.
double getWidth() const
Get the width which vehicles of this class shall have when being drawn.
MSCFModel * myCarFollowModel
instance of the car following model.
double getHeight() const
Get the height which vehicles of this class shall have when being drawn.
double minGapLat
The vehicle type's minimum lateral gap [m].
SUMOVehicleShape
Definition of vehicle classes to differ between different appearences.
SUMOTime loadingDuration
The time a container needs to get loaded on the vehicle.
static int myNextIndex
next value for the running index
const std::string & getID() const
Returns the name of the vehicle type.
void setWidth(const double &width)
Set a new value for this type's width.
double getActionStepLengthSecs() const
Returns this type's default action step length in seconds.
std::string id
The vehicle type's id.
double getLength() const
Get vehicle's length [m].
MSVehicleType(const SUMOVTypeParameter ¶meter)
Constructor.
void setVClass(SUMOVehicleClass vclass)
Set a new value for this type's vehicle class.
LateralAlignment latAlignment
The vehicles desired lateral alignment.
SUMOTime actionStepLength
The vehicle type's default actionStepLength [ms], i.e. the interval between two control actions...
double minGap
This class' free space in front of the vehicle itself.
void setColor(const RGBColor &color)
Set a new value for this type's color.
bool myWarnedActionStepLengthTauOnce
Indicator whether the user was already warned once about an action step length larger than the desire...
double getImpatience() const
Returns this type's impatience.
std::string getOSGFile() const
Get this vehicle type's 3D model file name.
double computeChosenSpeedDeviation(std::mt19937 *rng, const double minDev=-1.) const
Computes and returns the speed deviation.
LaneChangeModel lcModel
The lane-change model to use.
void setMaxSpeedLat(const double &maxSpeedLat)
Set a new value for this type's maximum lateral speed.
void setPreferredLateralAlignment(LateralAlignment latAlignment)
Set vehicle's preferred lateral alignment.
Representation of a lane in the micro simulation.
SUMOEmissionClass getEmissionClass() const
Get this vehicle type's emission class.
Distribution_Parameterized speedFactor
The factor by which the maximum speed may deviate from the allowed max speed on the street...
const Distribution_Parameterized & getSpeedFactor() const
Returns this type's speed factor.
double length
The physical vehicle length.
SUMOEmissionClass emissionClass
The emission class of this vehicle.
SUMOVehicleClass getVehicleClass() const
Get this vehicle type's vehicle class.
double myCachedActionStepLengthSecs
the vtypes actionsStepLength in seconds (cached because needed very often)