18 #ifndef SUMO_VehicleType_H 19 #define SUMO_VehicleType_H 30 #define LIBSUMO_VEHICLE_TYPE_GETTER \ 31 static double getLength(const std::string& typeID); \ 32 static double getMaxSpeed(const std::string& typeID); \ 33 static double getActionStepLength(const std::string& typeID); \ 34 static double getSpeedFactor(const std::string& typeID); \ 35 static double getSpeedDeviation(const std::string& typeID); \ 36 static double getAccel(const std::string& typeID); \ 37 static double getDecel(const std::string& typeID); \ 38 static double getEmergencyDecel(const std::string& typeID); \ 39 static double getApparentDecel(const std::string& typeID); \ 40 static double getImperfection(const std::string& typeID); \ 41 static double getTau(const std::string& typeID); \ 42 static std::string getVehicleClass(const std::string& typeID); \ 43 static std::string getEmissionClass(const std::string& typeID); \ 44 static std::string getShapeClass(const std::string& typeID); \ 45 static double getMinGap(const std::string& typeID); \ 46 static double getWidth(const std::string& typeID); \ 47 static double getHeight(const std::string& typeID); \ 48 static TraCIColor getColor(const std::string& typeID); \ 49 static double getMinGapLat(const std::string& typeID); \ 50 static double getMaxSpeedLat(const std::string& typeID); \ 51 static std::string getLateralAlignment(const std::string& typeID); 53 #define LIBSUMO_VEHICLE_TYPE_SETTER \ 54 static void setLength(const std::string& typeID, double length); \ 55 static void setMaxSpeed(const std::string& typeID, double speed); \ 56 static void setVehicleClass(const std::string& typeID, const std::string& clazz); \ 57 static void setSpeedFactor(const std::string& typeID, double factor); \ 58 static void setEmissionClass(const std::string& typeID, const std::string& clazz); \ 59 static void setShapeClass(const std::string& typeID, const std::string& shapeClass); \ 60 static void setWidth(const std::string& typeID, double width); \ 61 static void setHeight(const std::string& typeID, double height); \ 62 static void setMinGap(const std::string& typeID, double minGap); \ 63 static void setAccel(const std::string& typeID, double accel); \ 64 static void setDecel(const std::string& typeID, double decel); \ 65 static void setEmergencyDecel(const std::string& typeID, double decel); \ 66 static void setApparentDecel(const std::string& typeID, double decel); \ 67 static void setImperfection(const std::string& typeID, double imperfection); \ 68 static void setTau(const std::string& typeID, double tau); \ 69 static void setColor(const std::string& typeID, const TraCIColor& c); \ 70 static void setMinGapLat(const std::string& typeID, double minGapLat); \ 71 static void setMaxSpeedLat(const std::string& typeID, double speed); \ 72 static void setLateralAlignment(const std::string& typeID, const std::string& latAlignment); \ 73 static void setActionStepLength(const std::string& typeID, double actionStepLength, bool resetActionOffset); 80 class VariableWrapper;
94 static std::vector<std::string>
getIDList();
97 static std::string
getParameter(
const std::string& typeID,
const std::string& key);
100 static void copy(
const std::string& origTypeID,
const std::string& newTypeID);
104 static void setParameter(
const std::string&
id,
const std::string& name,
const std::string& value);
108 static std::shared_ptr<VariableWrapper>
makeWrapper();
125 #endif //SUMO_VehicleType_H std::map< std::string, TraCIResults > SubscriptionResults
{object->{variable->value}}
#define LIBSUMO_SUBSCRIPTION_API
static ContextSubscriptionResults myContextSubscriptionResults
static void setSpeedDeviation(const std::string &typeID, double deviation)
static LIBSUMO_VEHICLE_TYPE_GETTER std::string getParameter(const std::string &typeID, const std::string &key)
static SubscriptionResults mySubscriptionResults
std::map< std::string, SubscriptionResults > ContextSubscriptionResults
The car-following model and parameter.
static LIBSUMO_SUBSCRIPTION_API std::shared_ptr< VariableWrapper > makeWrapper()
static MSVehicleType * getVType(std::string id)
#define LIBSUMO_VEHICLE_TYPE_GETTER
static LIBSUMO_VEHICLE_TYPE_SETTER void copy(const std::string &origTypeID, const std::string &newTypeID)
static void setParameter(const std::string &id, const std::string &name, const std::string &value)
static bool handleVariable(const std::string &objID, const int variable, VariableWrapper *wrapper)
VehicleType()=delete
invalidated standard constructor
#define LIBSUMO_VEHICLE_TYPE_SETTER
static std::vector< std::string > getIDList()