extern "C" {
#endif
+#define API __attribute__((visibility("default")))
+
/**
* @addtogroup CAPI_SYSTEM_DIAGNOSTICS_MODULE
* @{
*
* @endcode
*/
-int diagnostics_set_notification_cb(diagnostics_notification_cb callback, void *user_data);
+API int diagnostics_set_notification_cb(diagnostics_notification_cb callback, void *user_data);
/**
* @brief Unsets the callback for diagnostics event notification.
* @retval #DIAGNOSTICS_ERROR_NOT_SUPPORTED Not supported
* @retval #DIAGNOSTICS_ERROR_IO_ERROR Internal error occurred
*/
-int diagnostics_unset_notification_cb(void);
+API int diagnostics_unset_notification_cb(void);
/**
* @platform
* @retval #DIAGNOSTICS_ERROR_IO_ERROR Internal error occurred
* @retval #DIAGNOSTICS_ERROR_OUT_OF_MEMORY Out of memory
*/
-int diagnostics_subscribe_event(const char *event_name, const char *client_id);
+API int diagnostics_subscribe_event(const char *event_name, const char *client_id);
/**
* @platform
*
* @endcode
*/
-int diagnostics_set_data_request_cb(diagnostics_request_cb callback, void *user_data);
+API int diagnostics_set_data_request_cb(diagnostics_request_cb callback, void *user_data);
/**
* @platform
* @retval #DIAGNOSTICS_ERROR_PERMISSION_DENIED Permission denied
* @retval #DIAGNOSTICS_ERROR_IO_ERROR Internal error occurred
*/
-int diagnostics_unset_data_request_cb(void);
+API int diagnostics_unset_data_request_cb(void);
/**
* @platform
*
* @endcode
*/
-int diagnostics_request_client_data(const char *client_id, const char **params, int params_size, diagnostics_data_h *data);
+API int diagnostics_request_client_data(const char *client_id, const char **params, int params_size, diagnostics_data_h *data);
/**
* @platform
*
* @endcode
*/
-int diagnostics_get_data(diagnostics_ctx_h ctx, const char **params, int params_size, diagnostics_data_h *data);
+API int diagnostics_get_data(diagnostics_ctx_h ctx, const char **params, int params_size, diagnostics_data_h *data);
/**
* @brief Gets a file descriptor for diagnostics data.
* @retval #DIAGNOSTICS_ERROR_NOT_SUPPORTED Not supported
* @retval #DIAGNOSTICS_ERROR_INVALID_PARAMETER Provided parameter is invalid
*/
-int diagnostics_data_get_fd(diagnostics_data_h data, int *fd);
+API int diagnostics_data_get_fd(diagnostics_data_h data, int *fd);
/**
* @brief Reads diagnostics data.
* @retval #DIAGNOSTICS_ERROR_TRY_AGAIN Try again
* @retval #DIAGNOSTICS_ERROR_IO_ERROR Internal error occurred while trying to read data, result is unspecified and *bytes_read is not updated
*/
-int diagnostics_data_read(diagnostics_data_h data, void *buf, size_t count, int timeout_ms, size_t *bytes_read);
+API int diagnostics_data_read(diagnostics_data_h data, void *buf, size_t count, int timeout_ms, size_t *bytes_read);
/**
* @brief Writes diagnostics data.
* @retval #DIAGNOSTICS_ERROR_TRY_AGAIN Try again
* @retval #DIAGNOSTICS_ERROR_IO_ERROR Internal error occurred while trying to write data, result is unspecified and *bytes_written is not updated
*/
-int diagnostics_data_write(diagnostics_data_h data, const void *buf, size_t count, size_t *bytes_written);
+API int diagnostics_data_write(diagnostics_data_h data, const void *buf, size_t count, size_t *bytes_written);
/**
* @platform
*
* @endcode
*/
-int diagnostics_send_event(const char *event_name, bundle *event_data);
+API int diagnostics_send_event(const char *event_name, bundle *event_data);
/**
* @brief Gets diagnostics client ID (event sender).
*
* @endcode
*/
-int diagnostics_get_client_id(diagnostics_ctx_h ctx, char **client_id);
+API int diagnostics_get_client_id(diagnostics_ctx_h ctx, char **client_id);
/**
* @brief Gets diagnostics event name.
*
* @endcode
*/
-int diagnostics_get_event_name(diagnostics_ctx_h ctx, char **event_name);
+API int diagnostics_get_event_name(diagnostics_ctx_h ctx, char **event_name);
/**
* @brief Gets diagnostics event data.
*
* @endcode
*/
-int diagnostics_get_event_data(diagnostics_ctx_h ctx, bundle **event_data);
+API int diagnostics_get_event_data(diagnostics_ctx_h ctx, bundle **event_data);
/**
* @brief Sets the diagnostics client ID.
* @retval #DIAGNOSTICS_ERROR_RESOURCE_BUSY Client ID has already been set, not possible to change
* @retval #DIAGNOSTICS_ERROR_IO_ERROR Internal error occurred
*/
-int diagnostics_set_client_id(const char *client_id);
+API int diagnostics_set_client_id(const char *client_id);
/**
* @platform
* @retval #DIAGNOSTICS_ERROR_INVALID_PARAMETER Provided parameter is invalid or the caller ID not set (required for system services only)
* @retval #DIAGNOSTICS_ERROR_IO_ERROR Internal error occurred
*/
-int diagnostics_request_bugreport(int pid);
+API int diagnostics_request_bugreport(int pid);
/**
* @brief Frees diagnostics data.
* @retval #DIAGNOSTICS_ERROR_NOT_SUPPORTED Not supported
* @retval #DIAGNOSTICS_ERROR_INVALID_PARAMETER Provided parameter is invalid
*/
-int diagnostics_data_destroy(diagnostics_data_h data);
+API int diagnostics_data_destroy(diagnostics_data_h data);
/**
* @brief Frees diagnostics context.
* @retval #DIAGNOSTICS_ERROR_NOT_SUPPORTED Not supported
* @retval #DIAGNOSTICS_ERROR_INVALID_PARAMETER Provided parameter is invalid
*/
-int diagnostics_destroy(diagnostics_ctx_h ctx);
+API int diagnostics_destroy(diagnostics_ctx_h ctx);
/**
* @}