#include <media_packet.h>
#include <media_format.h>
#include <muse_server.h>
+#include <mm_error.h>
typedef int32_t INT;
typedef int64_t INT64;
} \
} while (0)
+#define player_send_msg_with_no_return(fd, msg) \
+ do { \
+ int __len__ = 0; \
+ if (fd != MM_ERROR_INVALID_ARGUMENT) { \
+ __len__ = muse_core_msg_send(fd, msg); \
+ if (__len__ <= 0) \
+ LOGE("sending message failed"); \
+ } else { \
+ LOGE("get msg fd failed"); \
+ } \
+ } while (0)
+
+#define player_send_msg(fd, msg, ret) \
+ do { \
+ int __len__ = 0; \
+ if (fd != MM_ERROR_INVALID_ARGUMENT) { \
+ __len__ = muse_core_msg_send(fd, msg); \
+ if (__len__ <= 0) { \
+ LOGE("sending message failed"); \
+ ret = PLAYER_ERROR_INVALID_OPERATION; \
+ } \
+ } else { \
+ LOGE("get msg fd failed"); \
+ ret = PLAYER_ERROR_INVALID_OPERATION; \
+ } \
+ } while (0)
+
+#define player_send_msg_with_fd(fd, tfd, msg) \
+ do { \
+ int __len__ = 0; \
+ if (fd != MM_ERROR_INVALID_ARGUMENT) { \
+ __len__ = muse_core_msg_send_fd(fd, tfd, msg); \
+ if (__len__ <= 0) \
+ LOGE("sending message failed"); \
+ } else { \
+ LOGE("get msg fd failed"); \
+ } \
+ } while (0)
+
/**
* @brief Create and send return message.
* @remarks Does NOT guarantee thread safe.
#define player_msg_return(api, ret, module) \
do { \
char *__sndMsg__; \
- int __len__; \
__sndMsg__ = muse_core_msg_new(api, \
MUSE_TYPE_INT, MUSE_PARAM_RETURN, ret, \
0); \
- __len__ = muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
- if (__len__ <= 0) { \
- LOGE("sending message failed"); \
- ret = PLAYER_ERROR_INVALID_OPERATION; \
- } \
+ player_send_msg(muse_server_module_get_msg_fd(module), __sndMsg__, ret); \
muse_core_msg_free(__sndMsg__); \
} while (0)
#define player_msg_return1(api, ret, module, type, param) \
do { \
char *__sndMsg__; \
- int __len__; \
type __value__ = (type)param; \
__sndMsg__ = muse_core_msg_new(api, \
MUSE_TYPE_INT, MUSE_PARAM_RETURN, ret, \
MUSE_TYPE_##type, #param, __value__, \
0); \
- __len__ = muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
- if (__len__ <= 0) { \
- LOGE("sending message failed"); \
- ret = PLAYER_ERROR_INVALID_OPERATION; \
- } \
+ player_send_msg(muse_server_module_get_msg_fd(module), __sndMsg__, ret); \
muse_core_msg_free(__sndMsg__); \
} while (0)
#define player_msg_return2(api, ret, module, type1, param1, type2, param2) \
do { \
char *__sndMsg__; \
- int __len__; \
type1 __value1__ = (type1)param1; \
type2 __value2__ = (type2)param2; \
__sndMsg__ = muse_core_msg_new(api, \
MUSE_TYPE_##type1, #param1, __value1__, \
MUSE_TYPE_##type2, #param2, __value2__, \
0); \
- __len__ = muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
- if (__len__ <= 0) { \
- LOGE("sending message failed"); \
- ret = PLAYER_ERROR_INVALID_OPERATION; \
- } \
+ player_send_msg(muse_server_module_get_msg_fd(module), __sndMsg__, ret); \
muse_core_msg_free(__sndMsg__); \
} while (0)
#define player_msg_return3(api, ret, module, type1, param1, type2, param2, type3, param3) \
do { \
char *__sndMsg__; \
- int __len__; \
type1 __value1__ = (type1)param1; \
type2 __value2__ = (type2)param2; \
type3 __value3__ = (type3)param3; \
MUSE_TYPE_##type2, #param2, __value2__, \
MUSE_TYPE_##type3, #param3, __value3__, \
0); \
- __len__ = muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
- if (__len__ <= 0) { \
- LOGE("sending message failed"); \
- ret = PLAYER_ERROR_INVALID_OPERATION; \
- } \
+ player_send_msg(muse_server_module_get_msg_fd(module), __sndMsg__, ret); \
muse_core_msg_free(__sndMsg__); \
} while (0)
#define player_msg_return4(api, ret, module, type1, param1, type2, param2, type3, param3, type4, param4) \
do { \
char *__sndMsg__; \
- int __len__; \
type1 __value1__ = (type1)param1; \
type2 __value2__ = (type2)param2; \
type3 __value3__ = (type3)param3; \
MUSE_TYPE_##type3, #param3, __value3__, \
MUSE_TYPE_##type4, #param4, __value4__, \
0); \
- __len__ = muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
- if (__len__ <= 0) { \
- LOGE("sending message failed"); \
- ret = PLAYER_ERROR_INVALID_OPERATION; \
- } \
+ player_send_msg(muse_server_module_get_msg_fd(module), __sndMsg__, ret); \
muse_core_msg_free(__sndMsg__); \
} while (0)
#define player_msg_return_array(api, ret, module, param, length, datum_size) \
do { \
char *__sndMsg__; \
- int __len__; \
int *__value__ = (int *)param; \
__sndMsg__ = muse_core_msg_new(api, \
MUSE_TYPE_INT, MUSE_PARAM_RETURN, ret, \
length / sizeof(int) + (length % sizeof(int) ? 1 : 0), \
__value__, \
0); \
- __len__ = muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
- if (__len__ <= 0) { \
- LOGE("sending message failed"); \
- ret = PLAYER_ERROR_INVALID_OPERATION; \
- } \
+ player_send_msg(muse_server_module_get_msg_fd(module), __sndMsg__, ret); \
muse_core_msg_free(__sndMsg__); \
} while (0)
*/
#define player_msg_return2_fd(api, ret, module, type1, param1, type2, param2, tfd) \
do { \
+ int __fd__; \
char *__sndMsg__; \
- int __len__; \
type1 __value1__ = (type1)param1; \
type2 __value2__ = (type2)param2; \
int __tfd__[MUSE_NUM_FD]; \
MUSE_TYPE_##type1, #param1, __value1__, \
MUSE_TYPE_##type2, #param2, __value2__, \
0); \
- __len__ = muse_core_msg_send_fd(muse_server_module_get_msg_fd(module), __tfd__, __sndMsg__); \
- if (__len__ <= 0) { \
- LOGE("sending message failed"); \
+ __fd__ = muse_server_module_get_msg_fd(module); \
+ if (__fd__ != MM_ERROR_INVALID_ARGUMENT) { \
+ if (muse_core_msg_send_fd(__fd__, __tfd__, __sndMsg__) <= 0) { \
+ LOGE("sending message failed"); \
+ ret = PLAYER_ERROR_INVALID_OPERATION; \
+ } \
+ } else { \
+ LOGE("get msg fd failed"); \
ret = PLAYER_ERROR_INVALID_OPERATION; \
- } \
+ } \
muse_core_msg_free(__sndMsg__); \
} while (0)
__sndMsg__ = muse_core_msg_new(api, \
MUSE_TYPE_INT, MUSE_PARAM_EVENT, event, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
MUSE_TYPE_INT, MUSE_PARAM_EVENT, event, \
MUSE_TYPE_##type, #param, __value__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
MUSE_TYPE_##type1, #param1, __value1__, \
MUSE_TYPE_##type2, #param2, __value2__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
MUSE_TYPE_##type2, #param2, __value2__, \
MUSE_TYPE_##type3, #param3, __value3__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
MUSE_TYPE_##type3, #param3, __value3__, \
MUSE_TYPE_##type4, #param4, __value4__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
length / sizeof(int) + (length % sizeof(int) ? 1 : 0), \
__arr_value__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
MUSE_TYPE_INT, MUSE_PARAM_EVENT, event, \
MUSE_TYPE_##type, #param, __value__, \
0); \
- muse_core_msg_send_fd(muse_server_module_get_msg_fd(module), __tfd__, __sndMsg__); \
+ player_send_msg_with_fd(muse_server_module_get_msg_fd(module), __tfd__, __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
MUSE_TYPE_##type3, #param3, __value3__, \
MUSE_TYPE_##type4, #param4, __value4__, \
0); \
- muse_core_msg_send_fd(muse_server_module_get_msg_fd(module), __tfd__, __sndMsg__); \
+ player_send_msg_with_fd(muse_server_module_get_msg_fd(module), __tfd__, __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
length / sizeof(int) + (length % sizeof(int) ? 1 : 0), \
__arr_value__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
length / sizeof(int) + (length % sizeof(int) ? 1 : 0), \
__arr_value__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
length / sizeof(int) + (length % sizeof(int) ? 1 : 0), \
__arr_value__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
length / sizeof(int) + (length % sizeof(int) ? 1 : 0), \
__arr_value__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
length / sizeof(int) + (length % sizeof(int) ? 1 : 0), \
__arr_value__, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
length / sizeof(int) + (length % sizeof(int) ? 1 : 0), \
__arr_value__, \
0); \
- muse_core_msg_send_fd(muse_server_module_get_msg_fd(module), tfd, __sndMsg__); \
+ player_send_msg_with_fd(muse_server_module_get_msg_fd(module), tfd, __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
char *__sndMsg__; \
__sndMsg__ = muse_core_msg_new(MUSE_PLAYER_CB_CREATE_ACK, \
0); \
- muse_core_msg_send(muse_server_module_get_msg_fd(module), __sndMsg__); \
+ player_send_msg_with_no_return(muse_server_module_get_msg_fd(module), __sndMsg__); \
muse_core_msg_free(__sndMsg__); \
} while (0)
-
#ifdef __cplusplus
}
#endif