UWB_ERROR_OUT_OF_MEMORY = TIZEN_ERROR_OUT_OF_MEMORY, /**< Out of memory */
UWB_ERROR_PERMISSION_DENIED = TIZEN_ERROR_PERMISSION_DENIED, /**< Permission denied */
UWB_ERROR_NOT_SUPPORTED = TIZEN_ERROR_NOT_SUPPORTED, /**< Not supported */
- UWB_ERROR_OPERATION_FAILED = TIZEN_ERROR_UWB | 0x01
+ UWB_ERROR_OPERATION_FAILED = TIZEN_ERROR_UWB | 0x01, /**< Operation failed */
+ UWB_ERROR_ALREADY_INITIALIZED = TIZEN_ERROR_UWB | 0x02, /**< already initialized */
+ UWB_ERROR_NOT_INITIALIZED = TIZEN_ERROR_UWB | 0x03, /**< Not initialized */
} uwb_error_e;
typedef void *uwb_network_h; /**< Device handle */
#define UWB_FEATURE "http://tizen.org/feature/network.uwb"
+#define CHECK_ALREADY_INITIALIZED() \
+ if (uwb_ctx.manager_proxy != NULL) { \
+ _WARN("Alread initialized"); \
+ return UWB_ERROR_ALREADY_INITIALIZED; \
+ }
+
+#define CHECK_NOT_INITIALIZED() \
+ if (uwb_ctx.manager_proxy == NULL) { \
+ _WARN("Not initialized"); \
+ return UWB_ERROR_NOT_INITIALIZED; \
+ }
+
#define CHECK_INPUT_PARAMETER(arg) \
if (arg == NULL) { \
_WARN("INVALID_PARAMETER"); \
void *position_changed_user_data;
uwb_network_get_finished_cb network_get_finished_cb;
uwb_network_foreach_remote_node_cb foreach_remote_node_cb;
-} uwb_ctx;
+} uwb_ctx = {NULL,};
static inline void __handle_error(GError *error, int *ret)
{
static void manager_proxy_deinit()
{
g_object_unref(uwb_ctx.manager_proxy);
+ uwb_ctx.manager_proxy = NULL;
}
EXPORT_API int uwb_initialize()
int ret = UWB_ERROR_NONE;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_ALREADY_INITIALIZED();
_BEGIN();
int ret = UWB_ERROR_NONE;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GError *error = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GError *error = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
uwb_node_s **_own_node = (uwb_node_s **)own_node;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
int ret = UWB_ERROR_NONE;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GError *error = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GError *error = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GError *error = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GVariant *value_va = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GVariant *value_va = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GVariant *value_va = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GVariant *configuration = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GVariant *configuration = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();
GVariant *configuration = NULL;
CHECK_FEATURE_SUPPORTED(UWB_FEATURE);
+ CHECK_NOT_INITIALIZED();
_BEGIN();