26 #include "gtest/gtest_prod.h"
30 #include "RoadEmissionNMPB08.h"
91 virtual bool deepCopy(
const TYElement* pOther,
bool copyId =
true,
bool pUseCopyTag =
false);
93 virtual std::string
toString()
const;
183 QString* out_msg = NULL);
263 double flow,
double speed, RoadFlowType type = FlowType_CONST);
280 assert(
false &&
"You must use distriSrcs(const TYAltimetrie&) for roads");
#define TY_EXT_GRAPHIC_DECL_ONLY(classname)
#define OPROTODECL(classname)
#define TY_EXTENSION_DECL_ONLY(classname)
SmartPtr< TYRouteGeoNode > LPTYRouteGeoNode
Smart Pointer on TYRouteGeoNode.
std::vector< LPTYRouteGeoNode > TYTabRouteGeoNode
Collection of geometrical nodes of type TYRoute.
TYGeometryNode TYRouteGeoNode
Geometrical node of type TYRoute.
virtual void computeSpectre()
Assigne une altitude a chaque point de l'espace.
This helper class halves and restore the traffic flow of the road.
TrafficHalfer(TYRoute &road)
virtual std::string toString() const
bool computed_declivity
If true, the mean declivity of the read is computed from the altimetry.
FRIEND_TEST(TestRoads, xml_roundtrip)
bool operator==(const TYRoute &other) const
Operateur ==.
virtual bool deepCopy(const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false)
const TYTrafic & getTraficNuit() const
TYTrafic & getTraficNuit()
RoadTrafficComponent & accessRoadTrafficComponent(enum TrafficRegimes regime, enum TYTrafic::VehicleTypes vehic_type)
const TYTrafic & getTraficJour() const
TYTrafic & getTraficJour()
virtual void distriSrcs()
static const note77_tables note77_hourly_HGV_coeff
static const note77_tables note77_upper_bounds
void updateComputedDeclivity()
update the mean declivity from the current source distribution.
double note77_tables[2][2][3]
void setVitMoy(double vit)
static bool is_valid_declivity(double decli)
Check that the declivity is valid, i.e. is not undefined_declivity.
double ramp() const
Getter for the ramp in percent ( > 0 if rise, < 0 if down)
void setSurfaceAge(double age)
Setter for the surface age.
static const double undefined_declivity
virtual bool updateAltitudes(const TYAltimetrie &alti, LPTYRouteGeoNode pGeoNode, OMatrix globalMatrix)
Required the road to update its altitude after altimetry changed.
bool setFromAADT(double aadt_hgv, double aadt_lv, RoadType road_type, RoadFunction road_function, QString *out_msg=NULL)
Apply Note77 from Setra to estimate trafic from AADT and road kind.
TYRoute & operator=(const TYRoute &other)
Operateur =.
const RoadTrafficComponent & getNMPB08RoadTrafficComponent(enum TrafficRegimes regime, enum TYTrafic::VehicleTypes vehic_type) const
void setSurfaceType(RoadSurfaceType type)
Setter for the road surface type.
double surfaceAge() const
Getter for the surface age.
RoadSurfaceType surfaceType() const
Getter for the road surface type.
void setRoadTrafficComponent(enum TrafficRegimes regime, enum TYTrafic::VehicleTypes vehic_type, double flow, double speed, RoadFlowType type=FlowType_CONST)
Set the traffic parameter for a given regime and type of vehicles.
void setRamp(double ramp)
Setter for the ramp in percent ( > 0 if rise, < 0 if down)
static bool note77_check_validity(double aadt_hgv, double aadt_lv, RoadType road_type, RoadFunction road_function, QString *out_msg=NULL)
Check the validity domain of AADT for Note 77.
TYTrafic traffic_regimes[NB_TRAFFIC_REGIMES]
virtual DOM_Element toXML(DOM_Element &domElement)
static const note77_tables note77_hourly_LV_coeff
static const note77_tables note77_lower_bounds
virtual bool updateAcoustic(const bool &force=false)
void setRoadTrafficArrayForRegime(enum TrafficRegimes regime)
internally set the RoadTraffic's array of RoadTrafficComponents according to the given regime.
void setOffSet(const double &offSet)
bool operator!=(const TYRoute &other) const
Operateur !=.
double calculPenteMoyenne()
Calcul de la pente moyenne de la route.
virtual int fromXML(DOM_Element domElement)
const RoadTraffic & getNMBP08RoadTraffic(enum TrafficRegimes regime)