1 #ifndef ENVIRONMENTPROPERTIES_H_
2 #define ENVIRONMENTPROPERTIES_H_
4 #include "dbusplugin.h"
5 #include "abstractdbusinterface.h"
6 #include "abstractroutingengine.h"
8 /** @interface ExteriorBrightness : VehiclePropertyType **/
9 class ExteriorBrightnessProperty: public DBusSink
12 ExteriorBrightnessProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
13 :DBusSink("ExteriorBrightness", re, connection, map<string, string>())
15 wantPropertyVariant(VehicleProperty::ExteriorBrightness, "ExteriorBrightness", AbstractProperty::Read);
19 /** @interface Temperature : VehiclePropertyType **/
20 class Temperature: public DBusSink
23 Temperature(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
24 :DBusSink("Temperature", re, connection, map<string, string>())
26 wantPropertyVariant(VehicleProperty::InteriorTemperature, "InteriorTemperature", AbstractProperty::Read);
27 wantPropertyVariant(VehicleProperty::ExteriorTemperature, "ExteriorTemperature", AbstractProperty::Read);
31 /** @interface RainSensor : VehiclePropertyType **/
32 class RainSensor: public DBusSink
35 RainSensor(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
36 :DBusSink("RainSensor", re, connection, map<string, string>())
38 wantPropertyVariant(VehicleProperty::RainSensor, "RainIntensity", AbstractProperty::Read);
42 class WindshieldWiperStatus: public DBusSink
45 WindshieldWiperStatus(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
46 :DBusSink("WiperStatus", re, connection, map<string, string>())
48 wantPropertyVariant(VehicleProperty::WindshieldWiperSpeed, "WiperSpeed", AbstractProperty::Read);
49 wantPropertyVariant(VehicleProperty::WindshieldWiperSetting, "WiperSetting", AbstractProperty::ReadWrite);
53 class ClimateControlProperty: public DBusSink
56 ClimateControlProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
57 :DBusSink("ClimateControl", re, connection, map<string, string>())
59 wantPropertyVariant(VehicleProperty::AirflowDirectionW3C, "AirflowDirection", AbstractProperty::ReadWrite);
60 wantPropertyVariant(VehicleProperty::FanSpeed, "FanSpeedLevel", AbstractProperty::ReadWrite);
61 wantPropertyVariant(VehicleProperty::TargetTemperature, "TargetTemperature", AbstractProperty::ReadWrite);
62 wantPropertyVariant(VehicleProperty::AirConditioning, "AirConditioning", AbstractProperty::ReadWrite);
63 wantPropertyVariant(VehicleProperty::AirRecirculation, "AirRecirculation", AbstractProperty::ReadWrite);
64 wantPropertyVariant(VehicleProperty::Heater, "Heater", AbstractProperty::ReadWrite);
65 wantPropertyVariant(VehicleProperty::SteeringWheelHeater, "SteeringWheelHeater", AbstractProperty::ReadWrite);
66 wantPropertyVariant(VehicleProperty::SeatHeater, "SeatHeater", AbstractProperty::ReadWrite);
67 wantPropertyVariant(VehicleProperty::SeatCooler, "SeatCooler", AbstractProperty::ReadWrite);
71 /** @interface WindowStatus : VehiclePropertyType **/
72 /// TODO: Depricated in 0.14. Use SideWindow
73 class WindowStatusProperty: public DBusSink
76 WindowStatusProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
77 :DBusSink("WindowStatus", re, connection, map<string, string>())
79 wantPropertyVariant(VehicleProperty::WindowStatus, "Openness", AbstractProperty::ReadWrite);
80 wantPropertyVariant(VehicleProperty::Defrost, "Defrost", AbstractProperty::ReadWrite);
84 class SideWindowStatusProperty: public DBusSink
87 SideWindowStatusProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
88 :DBusSink("SideWindow", re, connection, map<string, string>())
90 wantPropertyVariant(VehicleProperty::WindowStatus, "Openness", AbstractProperty::ReadWrite);
91 wantPropertyVariant(VehicleProperty::WindowLockStatus, "Lock", AbstractProperty::ReadWrite);
95 class DefrostProperty: public DBusSink
98 DefrostProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
99 :DBusSink("Defrost", re, connection, map<string, string>())
101 wantPropertyVariant(VehicleProperty::DefrostWindow, "DefrostWindow", AbstractProperty::ReadWrite);
102 wantPropertyVariant(VehicleProperty::DefrostMirror, "DefrostMirror", AbstractProperty::ReadWrite);
106 /** @interface Sunroof : VehiclePropertyType **/
107 class Sunroof: public DBusSink
110 Sunroof(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
111 :DBusSink("Sunroof", re, connection, map<string, string>())
113 wantPropertyVariant(VehicleProperty::Sunroof, "Openness", AbstractProperty::ReadWrite);
114 wantPropertyVariant(VehicleProperty::SunroofTilt, "Tilt", AbstractProperty::ReadWrite);
118 /** @interface ConvertibleRoof : VehiclePropertyType **/
119 class ConvertibleRoof: public DBusSink
122 ConvertibleRoof(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
123 :DBusSink("ConvertibleRoof", re, connection, map<string, string>())
125 wantPropertyVariant(VehicleProperty::ConvertibleRoof, "Setting", AbstractProperty::ReadWrite);
126 wantPropertyVariant(VehicleProperty::ConvertibleRoofStatus, "Status", AbstractProperty::Read);
130 class AtmosphericPressure: public DBusSink
133 AtmosphericPressure(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
134 :DBusSink("AtmosphericPressure", re, connection, map<string, string>())
136 wantPropertyVariant(VehicleProperty::AtmosphericPressure, "Pressure", AbstractProperty::ReadWrite);