2015-01-09 08:20:14 -08:00
|
|
|
#ifndef _ELDBUS_MODEL_PRIVATE_H
|
|
|
|
#define _ELDBUS_MODEL_PRIVATE_H
|
|
|
|
|
|
|
|
#include "eldbus_private.h"
|
|
|
|
|
2016-04-20 13:07:53 -07:00
|
|
|
#include <Ecore.h>
|
|
|
|
#include <Eina.h>
|
2015-01-09 08:20:14 -08:00
|
|
|
#include <Eo.h>
|
|
|
|
#include <Efl.h>
|
|
|
|
|
2017-12-20 14:19:56 -08:00
|
|
|
#include "ecore_internal.h"
|
|
|
|
|
2017-10-25 18:05:41 -07:00
|
|
|
typedef struct _Eldbus_Children_Slice_Promise Eldbus_Children_Slice_Promise;
|
|
|
|
typedef struct _Eldbus_Model_Data Eldbus_Model_Data;
|
|
|
|
|
2016-04-20 13:07:53 -07:00
|
|
|
struct _Eldbus_Children_Slice_Promise
|
|
|
|
{
|
2017-10-25 18:05:41 -07:00
|
|
|
Eina_Promise *p;
|
|
|
|
|
|
|
|
unsigned int start;
|
|
|
|
unsigned int count;
|
2016-04-20 13:07:53 -07:00
|
|
|
};
|
|
|
|
|
2017-10-25 18:05:41 -07:00
|
|
|
struct _Eldbus_Model_Data
|
2016-04-20 13:07:53 -07:00
|
|
|
{
|
2017-10-25 18:05:41 -07:00
|
|
|
Eldbus_Connection *connection;
|
|
|
|
Eldbus_Connection_Type type;
|
|
|
|
|
|
|
|
Eina_Stringshare *address;
|
|
|
|
Eina_Stringshare *unique_name;
|
|
|
|
|
|
|
|
Eina_Bool private : 1;
|
|
|
|
|
|
|
|
Eina_Bool is_listed : 1;
|
2016-04-20 13:07:53 -07:00
|
|
|
};
|
|
|
|
|
2017-10-25 18:05:19 -07:00
|
|
|
#define UNIQUE_NAME_PROPERTY "unique_name"
|
|
|
|
|
2015-01-09 08:20:14 -08:00
|
|
|
/* logging support */
|
|
|
|
extern int eldbus_model_log_dom;
|
|
|
|
|
2016-06-16 17:50:37 -07:00
|
|
|
#define ELDBUS_MODEL_ON_ERROR_EXIT_PROMISE_SET(exp, promise, err, v) \
|
2016-04-20 13:07:53 -07:00
|
|
|
do \
|
|
|
|
{ \
|
|
|
|
if (EINA_UNLIKELY(!(exp))) \
|
|
|
|
{ \
|
2016-09-29 09:12:09 -07:00
|
|
|
efl_promise_failed_set(promise, err); \
|
2016-06-16 17:50:37 -07:00
|
|
|
return v; \
|
2016-04-20 13:07:53 -07:00
|
|
|
} \
|
|
|
|
} \
|
|
|
|
while(0)
|
|
|
|
|
2015-01-09 08:20:14 -08:00
|
|
|
#ifdef CRI
|
|
|
|
# undef CRI
|
|
|
|
#endif
|
|
|
|
#define CRI(...) EINA_LOG_DOM_CRIT(eldbus_model_log_dom, __VA_ARGS__)
|
|
|
|
|
|
|
|
#ifdef ERR
|
|
|
|
# undef ERR
|
|
|
|
#endif
|
|
|
|
#define ERR(...) EINA_LOG_DOM_ERR(eldbus_model_log_dom, __VA_ARGS__)
|
|
|
|
|
|
|
|
#ifdef WRN
|
|
|
|
# undef WRN
|
|
|
|
#endif
|
|
|
|
#define WRN(...) EINA_LOG_DOM_WARN(eldbus_model_log_dom, __VA_ARGS__)
|
|
|
|
|
|
|
|
#ifdef INF
|
|
|
|
# undef INF
|
|
|
|
#endif
|
|
|
|
#define INF(...) EINA_LOG_DOM_INFO(eldbus_model_log_dom, __VA_ARGS__)
|
|
|
|
|
|
|
|
#ifdef DBG
|
|
|
|
# undef DBG
|
|
|
|
#endif
|
|
|
|
#define DBG(...) EINA_LOG_DOM_DBG(eldbus_model_log_dom, __VA_ARGS__)
|
|
|
|
|
|
|
|
#endif
|