3 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 * Licensed under the Apache License, Version 2.0 (the License);
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
18 #ifndef PLATFORM_MONITOR_INTERFACE_H_
19 #define PLATFORM_MONITOR_INTERFACE_H_
21 #include "platform_monitor_resource.h"
22 #include "platform-monitor/common.h"
26 #endif /* __cplusplus */
29 * @file platform_monitor_interface.h
30 * @brief Defines plug-in interfaces about service platform notification
33 /** @addtogroup plugin_platformmonitor PlatformMonitor Domain
39 * API to connect to the service and register client for receiving service notification
41 * @param[in] data data formatted by sync_agent_pm_register_data_s
46 * @see sync_agent_init(const char *)
49 void sync_agent_plugin_init_service_noti(void *data);
52 * API to disconnect service and unregister client to the service
54 * @return SYNC_AGENT_PM_SUCCESS on success, SYNC_AGENT_PM_FAIL on error
59 * @see sync_agent_unregister_service_noti(int)
62 sync_agent_pm_return_e sync_agent_plugin_unregister_service_noti(void);
65 * API to add user data to the service
67 * @param[in] add_data data to add to the service
68 * @param[in] added_data_id as returned by sync_agent_plugin_add_service_data() - id of the newly data added to the service
70 * @return SYNC_AGENT_PM_SUCCESS on success, SYNC_AGENT_PM_FAIL on error
75 * @see sync_agent_add_service_data(int, void *, int *)
78 sync_agent_pm_return_e sync_agent_plugin_add_service_data(void *add_data, int *added_data_id);
81 * API to remove user data to the service
83 * @param[in] remove_data_id service id of data expected to be deleted
85 * @return SYNC_AGENT_PM_SUCCESS on success, SYNC_AGENT_PM_FAIL on error
90 * @see sync_agent_remove_service_data(int, int)
93 sync_agent_pm_return_e sync_agent_plugin_remove_service_data(int remove_data_id);
96 * API to get service data
98 * @param[in] get_data_id service id of data that user want to get
99 * @param[in] service_data as returned by sync_agent_plugin_get_service_data() - service data that user want to get
101 * @return SYNC_AGENT_PM_SUCCESS on success, SYNC_AGENT_PM_FAIL on error
106 * @see sync_agent_get_service_data(int, int, void **)
109 sync_agent_pm_return_e sync_agent_plugin_get_service_data(int get_data_id, void **service_data);
112 * API to set user callback function pointer to the pre-registered service callback function
114 * @param[in] callback_counts the number of callback functions
115 * @param[in] list variable number of callback functions (type : 'sync_agent_specific_type_cb')
120 * @see sync_agnet_register_user_callback(int, const char *, int, ...)
123 void sync_agent_plugin_set_user_callback(int callback_counts, va_list list);
131 #endif /* __cplusplus */
132 #endif /* PLATFORM_MONITOR_INTERFACE_H_ */