add source for ces2019
[apps/agl-service-windowmanager-2017.git] / src / request.hpp
index 6b2bda1..bb203e3 100644 (file)
 
 #include <string>
 #include <vector>
+#include <memory>
 
 namespace wm
 {
 
+class WMClient;
+
 enum Task
 {
     TASK_ALLOCATE,
     TASK_RELEASE,
+    TASK_PARKING_BRAKE_OFF,
+    TASK_PARKING_BRAKE_ON,
+    TASK_ACCEL_PEDAL_OFF,
+    TASK_ACCEL_PEDAL_ON,
+    TASK_HEDLAMP_OFF,
+    TASK_HEDLAMP_ON,
+    TASK_LIGHTSTATUS_BRAKE_OFF,
+    TASK_LIGHTSTATUS_BRAKE_ON,
+    TASK_RESTRICTION_MODE_OFF,
+    TASK_RESTRICTION_MODE_ON,
     TASK_INVALID
 };
 
@@ -34,9 +47,30 @@ enum TaskVisible
 {
     VISIBLE,
     INVISIBLE,
+    REQ_REMOTE_VISIBLE,
+    REQ_REMOTE_INVISIBLE,
+    REMOTE_VISIBLE,
+    REMOTE_INVISIBLE,
     NO_CHANGE
 };
 
+enum TaskCarState
+{
+    PARKING_BRAKE_OFF,
+    PARKING_BRAKE_ON,
+    ACCEL_PEDAL_OFF,
+    ACCEL_PEDAL_ON,
+    HEDLAMP_OFF,
+    HEDLAMP_ON,
+    LIGHTSTATUS_BRAKE_OFF,
+    LIGHTSTATUS_BRAKE_ON,
+    CAR_STOP,
+    CAR_RUN,
+    RESTRICTION_MODE_OFF,
+    RESTRICTION_MODE_ON,
+    NO_TASK,
+};
+
 struct WMTrigger
 {
     std::string appid;
@@ -47,11 +81,13 @@ struct WMTrigger
 
 struct WMAction
 {
-    std::string appid;
+    unsigned req_num;
+    std::shared_ptr<WMClient> client;
     std::string role;
     std::string area;
     TaskVisible visible;
     bool end_draw_finished;
+    TaskCarState car_state;
 };
 
 struct WMRequest
@@ -59,6 +95,7 @@ struct WMRequest
     WMRequest();
     explicit WMRequest(std::string appid, std::string role,
                        std::string area, Task task);
+    explicit WMRequest(Task task);
     virtual ~WMRequest();
     WMRequest(const WMRequest &obj);
 
@@ -69,4 +106,4 @@ struct WMRequest
 
 } // namespace wm
 
-#endif //WMREQUEST_HPP
\ No newline at end of file
+#endif //WMREQUEST_HPP