Move function definition to aul header
[platform/core/appfw/aul-1.git] / include / aul_job_scheduler.h
1 /*
2  * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #pragma once
18
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22
23 #define AUL_K_JOB_ID                    "__AUL_JOB_ID__"
24 #define AUL_K_JOB_STATUS                "__AUL_JOB_STATUS__"
25 #define AUL_K_JOB_REAL_ID               "__AUL_JOB_REAL_ID__"
26
27 #define AUL_K_JOB_PERIODIC              "__AUL_JOB_PERIODIC__"
28 #define AUL_K_JOB_PERSISTENT            "__AUL_JOB_PERSISTENT__"
29 #define AUL_K_JOB_IS_ONCE               "__AUL_JOB_IS_ONCE__"
30
31 #define AUL_K_JOB_REQ_TIMEOUT           "__AUL_JOB_REQ_TIMEOUT__"
32 #define AUL_K_JOB_REQ_BATTERY_NOT_LOW   "__AUL_JOB_REQ_BATTERY_NOT_LOW__"
33 #define AUL_K_JOB_REQ_CHARGING          "__AUL_JOB_REQ_CHARGING__"
34 #define AUL_K_JOB_REQ_WIFI_CONNECTION   "__AUL_JOB_REQ_WIFI_CONNECTION__"
35
36 #define AUL_K_JOB_TRIG_BATTERY_LEVEL_EMPTY \
37         "__AUL_JOB_TRIG_BATTERY_LEVEL_EMPTY__"
38 #define AUL_K_JOB_TRIG_BATTERY_LEVEL_CRITICAL \
39         "__AUL_JOB_TRIG_BATTERY_LEVEL_CRITICAL__"
40 #define AUL_K_JOB_TRIG_BATTERY_LEVEL_LOW \
41         "__AUL_JOB_TRIG_BATTERY_LEVEL_LOW__"
42 #define AUL_K_JOB_TRIG_BATTERY_LEVEL_HIGH \
43         "__AUL_JOB_TRIG_BATTERY_LEVEL_HIGH__"
44 #define AUL_K_JOB_TRIG_CHARGER_STATE_CONNECTED \
45         "__AUL_JOB_TRIG_CHARGER_STATE_CONNECTED__"
46 #define AUL_K_JOB_TRIG_CHARGER_STATE_DISCONNECTED \
47         "__AUL_JOB_TRIG_CHARGER_STATE_DISCONNECTED__"
48 #define AUL_K_JOB_TRIG_DISPLAY_STATE_ON \
49         "__AUL_JOB_TRIG_DISPLAY_STATE_ON__"
50 #define AUL_K_JOB_TRIG_DISPLAY_STATE_OFF \
51         "__AUL_JOB_TRIG_DISPLAY_STATE_OFF__"
52 #define AUL_K_JOB_TRIG_DISPLAY_STATE_DIM \
53         "__AUL_JOB_TRIG_DISPLAY_STATE_DIM__"
54 #define AUL_K_JOB_TRIG_EARJACK_STATE_CONNECTED \
55         "__AUL_JOB_TRIG_EARJACK_STATE_CONNECTED__"
56 #define AUL_K_JOB_TRIG_EARJACK_STATE_DISCONNECTED \
57         "__AUL_JOB_TRIG_EARJACK_STATE_DISCONNECTED__"
58 #define AUL_K_JOB_TRIG_GPS_STATE_DISABLED \
59         "__AUL_JOB_TRIG_GPS_STATE_DISABLED__"
60 #define AUL_K_JOB_TRIG_GPS_STATE_SEARCHING \
61         "__AUL_JOB_TRIG_GPS_STATE_SEARCHING__"
62 #define AUL_K_JOB_TRIG_GPS_STATE_CONNECTED \
63         "__AUL_JOB_TRIG_GPS_STATE_CONNECTED__"
64 #define AUL_K_JOB_TRIG_POWERSAVE_MODE_ENABLED \
65         "__AUL_JOB_TRIG_POWERSAVE_MODE_ENABLED__"
66 #define AUL_K_JOB_TRIG_POWERSAVE_MODE_DISABLED \
67         "__AUL_JOB_TRIG_POWERSAVE_MODE_DISABLED__"
68 #define AUL_K_JOB_TRIG_USB_STATE_CONNECTED \
69         "__AUL_JOB_TRIG_USB_STATE_CONNECTED__"
70 #define AUL_K_JOB_TRIG_USB_STATE_DISCONNECTED \
71         "__AUL_JOB_TRIG_USB_STATE_DISCONNECTED__"
72 #define AUL_K_JOB_TRIG_WIFI_STATE_DISABLED \
73         "__AUL_JOB_TRIG_WIFI_STATE_DISABLED__"
74 #define AUL_K_JOB_TRIG_WIFI_STATE_DISCONNECTED \
75         "__AUL_JOB_TRIG_WIFI_STATE_DISCONNECTED__"
76 #define AUL_K_JOB_TRIG_WIFI_STATE_CONNECTED \
77         "__AUL_JOB_TRIG_WIFI_STATE_CONNECTED__"
78
79 typedef enum {
80         JOB_STATUS_START,
81         JOB_STATUS_STOPPED,
82         JOB_STATUS_FINISHED,
83 } aul_job_status_e;
84
85 int aul_job_scheduler_update_job_status(const char *job_id,
86                 aul_job_status_e job_status);
87
88 #ifdef __cplusplus
89 }
90 #endif