reverted varianttype
[profile/ivi/automotive-message-broker.git] / plugins / dbus / environmentproperties.h
1 #ifndef ENVIRONMENTPROPERTIES_H_
2 #define ENVIRONMENTPROPERTIES_H_
3
4 #include "dbusplugin.h"
5 #include "abstractdbusinterface.h"
6 #include "abstractroutingengine.h"
7
8 /** @interface ExteriorBrightness : VehiclePropertyType **/
9 class ExteriorBrightnessProperty: public DBusSink
10 {
11 public:
12         ExteriorBrightnessProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
13                 :DBusSink("ExteriorBrightness", re, connection, map<string, string>())
14         {
15                 wantPropertyVariant(VehicleProperty::ExteriorBrightness, "ExteriorBrightness", VariantType::Read);
16         }
17 };
18
19 /** @interface Temperature : VehiclePropertyType **/
20 class Temperature: public DBusSink
21 {
22 public:
23         Temperature(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
24                 :DBusSink("Temperature", re, connection, map<string, string>())
25         {
26                 wantPropertyVariant(VehicleProperty::InteriorTemperature, "InteriorTemperature", VariantType::Read);
27                 wantPropertyVariant(VehicleProperty::ExteriorTemperature, "ExteriorTemperature", VariantType::Read);
28         }
29 };
30
31 /** @interface RainSensor : VehiclePropertyType **/
32 class RainSensor: public DBusSink
33 {
34 public:
35         RainSensor(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
36                 :DBusSink("RainSensor", re, connection, map<string, string>())
37         {
38                 wantPropertyVariant(VehicleProperty::RainSensor, "RainIntensity", VariantType::Read);
39         }
40 };
41
42 class WindshieldWiperStatus: public DBusSink
43 {
44 public:
45         WindshieldWiperStatus(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
46                 :DBusSink("WiperStatus", re, connection, map<string, string>())
47         {
48                 wantPropertyVariant(VehicleProperty::WindshieldWiperSpeed, "WiperSpeed", VariantType::Read);
49                 wantPropertyVariant(VehicleProperty::WindshieldWiperSetting, "WiperSetting", VariantType::ReadWrite);
50         }
51 };
52
53 class ClimateControlProperty: public DBusSink
54 {
55 public:
56         ClimateControlProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
57                 :DBusSink("ClimateControl", re, connection, map<string, string>())
58         {
59                 wantPropertyVariant(VehicleProperty::AirflowDirectionW3C, "AirflowDirection", VariantType::ReadWrite);
60                 wantPropertyVariant(VehicleProperty::FanSpeed, "FanSpeedLevel", VariantType::ReadWrite);
61                 wantPropertyVariant(VehicleProperty::TargetTemperature, "TargetTemperature", VariantType::ReadWrite);
62                 wantPropertyVariant(VehicleProperty::AirConditioning, "AirConditioning", VariantType::ReadWrite);
63                 wantPropertyVariant(VehicleProperty::AirRecirculation, "AirRecirculation", VariantType::ReadWrite);
64                 wantPropertyVariant(VehicleProperty::Heater, "Heater", VariantType::ReadWrite);
65                 wantPropertyVariant(VehicleProperty::SteeringWheelHeater, "SteeringWheelHeater", VariantType::ReadWrite);
66                 wantPropertyVariant(VehicleProperty::SeatHeater, "SeatHeater", VariantType::ReadWrite);
67                 wantPropertyVariant(VehicleProperty::SeatCooler, "SeatCooler", VariantType::ReadWrite);
68         }
69 };
70
71 /** @interface WindowStatus : VehiclePropertyType **/
72 /// TODO: Depricated in 0.14.  Use SideWindow
73 class WindowStatusProperty: public DBusSink
74 {
75 public:
76         WindowStatusProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
77                 :DBusSink("WindowStatus", re, connection, map<string, string>())
78         {
79                 wantPropertyVariant(VehicleProperty::WindowStatus, "Openness", VariantType::ReadWrite);
80                 wantPropertyVariant(VehicleProperty::Defrost, "Defrost", VariantType::ReadWrite);
81         }
82 };
83
84 class SideWindowStatusProperty: public DBusSink
85 {
86 public:
87         SideWindowStatusProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
88                 :DBusSink("SideWindow", re, connection, map<string, string>())
89         {
90                 wantPropertyVariant(VehicleProperty::WindowStatus, "Openness", VariantType::ReadWrite);
91                 wantPropertyVariant(VehicleProperty::WindowLockStatus, "Lock", VariantType::ReadWrite);
92         }
93 };
94
95 class DefrostProperty: public DBusSink
96 {
97 public:
98         DefrostProperty(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
99                 :DBusSink("Defrost", re, connection, map<string, string>())
100         {
101                 wantPropertyVariant(VehicleProperty::DefrostWindow, "DefrostWindow", VariantType::ReadWrite);
102                 wantPropertyVariant(VehicleProperty::DefrostMirror, "DefrostMirror", VariantType::ReadWrite);
103         }
104 };
105
106 /** @interface Sunroof : VehiclePropertyType **/
107 class Sunroof: public DBusSink
108 {
109 public:
110         Sunroof(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
111                 :DBusSink("Sunroof", re, connection, map<string, string>())
112         {
113                 wantPropertyVariant(VehicleProperty::Sunroof, "Openness", VariantType::ReadWrite);
114                 wantPropertyVariant(VehicleProperty::SunroofTilt, "Tilt", VariantType::ReadWrite);
115         }
116 };
117
118 /** @interface ConvertibleRoof : VehiclePropertyType **/
119 class ConvertibleRoof: public DBusSink
120 {
121 public:
122         ConvertibleRoof(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
123                 :DBusSink("ConvertibleRoof", re, connection, map<string, string>())
124         {
125                 wantPropertyVariant(VehicleProperty::ConvertibleRoof, "Setting", VariantType::ReadWrite);
126                 wantPropertyVariant(VehicleProperty::ConvertibleRoofStatus, "Status", VariantType::Read);
127         }
128 };
129
130 class AtmosphericPressure: public DBusSink
131 {
132 public:
133         AtmosphericPressure(VehicleProperty::Property, AbstractRoutingEngine* re, GDBusConnection* connection)
134                 :DBusSink("AtmosphericPressure", re, connection, map<string, string>())
135         {
136                 wantPropertyVariant(VehicleProperty::AtmosphericPressure, "Pressure", VariantType::ReadWrite);
137         }
138 };
139 #endif