merge with master
[platform/core/system/sync-agent.git] / include / event / data_accessor.h
index 5f7d38a..1e715f1 100755 (executable)
@@ -140,6 +140,58 @@ extern "C" {
        void sync_agent_get_event_data_param(sync_agent_event_data_s * iter, void *data);
 
 /**
+ * API to extract parameter from Event packet
+ * @remarks This function will be used when extracting received event packet.
+ * extracted order is matched the order of @ref sync_agent_append_event_data_param().
+ *
+ * @par Usage:
+ * @code
+               int event_num = 1;
+               int event_int_data = 0;
+               int result_int = 0;
+               char *result_char = NULL;
+               sync_agent_event_error_e error = SYNC_AGENT_EVENT_SUCCESS;
+               sync_agent_event_data_s *request_event = NULL;
+               sync_agent_event_data_s *response_event = NULL;
+               ...
+               request_event = sync_agent_create_event(event_num);
+               if (request_event == NULL) {
+                       // error handling
+                       ...
+               }
+
+               sync_agent_append_event_data_param(request_event, SYNC_AGENT_EVENT_PARAM_TYPE_INTEGER, &event_int_data);
+               ...
+               response_event = sync_agent_send_event(request_event, &error);
+               if (error != SYNC_AGENT_EVENT_SUCCESS) {
+                       // error handling
+                       ...
+               }
+
+               if (response_event == NULL) {
+                       // error handling
+                       ...
+               }
+
+               sync_agent_get_event_data_param_int(response_event, &result_int);
+               sync_agent_get_event_data_param_str(response_event, &result_char);
+               ...
+ *
+ * @endcode
+ *
+ * @param[in] iter sync_agent_event_data_s pointer parameters to be extracted
+ * @param[in] data as returned by sync_agent_get_event_data_param() - real extracted data
+ *
+ * @par Since
+ *
+ *
+ * @see _event_listener(void *)
+ *
+ */
+       void sync_agent_get_event_data_param_int(sync_agent_event_data_s * iter, int *data);
+       void sync_agent_get_event_data_param_str(sync_agent_event_data_s * iter, char ** data);
+
+/**
  * API to free sync_agent_event_data_s pointer (event object)
  *
  * @par Usage: