#include <mm_types.h>
#include <system_info.h>
#include <scmirroring_internal.h>
+#include <mmf/mm_wfd_sink.h>
#ifndef TRUE
#define TRUE 1
scmirroring_error_e _scmirroring_error_convert(const char *func, int error);
+scmirroring_sink_state_e _scmirroring_sink_state_convert(MMWFDSinkStateType mm_state);
+scmirroring_state_e _scmirroring_src_state_convert(gchar *str);
#ifdef __cplusplus
}
#define CONNECTED_TO_SERVER 1
#define NOT_CONNECTED_TO_SERVER 0
-static scmirroring_sink_state_e __scmirroring_primary_sink_state_convert(MMWFDSinkStateType mm_state)
-{
- scmirroring_sink_state_e state = SCMIRRORING_SINK_STATE_NONE;
-
- switch (mm_state) {
- case MM_WFD_SINK_STATE_NONE:
- state = SCMIRRORING_SINK_STATE_NONE;
- break;
- case MM_WFD_SINK_STATE_NULL:
- state = SCMIRRORING_SINK_STATE_NULL;
- break;
- case MM_WFD_SINK_STATE_PREPARED:
- state = SCMIRRORING_SINK_STATE_PREPARED;
- break;
- case MM_WFD_SINK_STATE_CONNECTED:
- state = SCMIRRORING_SINK_STATE_CONNECTED;
- break;
- case MM_WFD_SINK_STATE_PLAYING:
- state = SCMIRRORING_SINK_STATE_PLAYING;
- break;
- case MM_WFD_SINK_STATE_PAUSED:
- state = SCMIRRORING_SINK_STATE_PAUSED;
- break;
- case MM_WFD_SINK_STATE_DISCONNECTED:
- state = SCMIRRORING_SINK_STATE_DISCONNECTED;
- break;
- default:
- state = SCMIRRORING_SINK_STATE_NONE;
- break;
- }
-
- return state;
-}
-
void __mm_scmirroring_primary_sink_set_message_cb(int error_type, MMWFDSinkStateType state_type, void *uData)
{
scmirroring_error_e error = _scmirroring_error_convert(__func__, error_type);
- scmirroring_sink_state_e state = __scmirroring_primary_sink_state_convert(state_type);
+ scmirroring_sink_state_e state = _scmirroring_sink_state_convert(state_type);
scmirroring_primary_sink_s *handle = (scmirroring_primary_sink_s *)uData;
/* call application callback */
result = mm_wfd_sink_get_current_state(handle->mm_handle, &mm_state);
if (result == MM_ERROR_NONE) {
- *state = __scmirroring_primary_sink_state_convert(mm_state);
+ *state = _scmirroring_sink_state_convert(mm_state);
scmirroring_debug("ScreenMirroring current state is [%d]", *state);
}
scmirroring_debug_fleave();
return SCMIRRORING_ERROR_NONE;
}
-static int __scmirroring_primary_src_get_status(gchar *str)
-{
- if (g_strrstr(str, "LISTENING"))
- return SCMIRRORING_STATE_CONNECTION_WAIT;
- else if (g_strrstr(str, "CONNECTED"))
- return SCMIRRORING_STATE_CONNECTED;
- else if (g_strrstr(str, "PLAYING"))
- return SCMIRRORING_STATE_PLAYING;
- else if (g_strrstr(str, "SET"))
- return SCMIRRORING_STATE_READY;
- else if (g_strrstr(str, SCMIRRORING_STATE_CMD_PAUSE))
- return SCMIRRORING_STATE_PAUSED;
- else if (g_strrstr(str, SCMIRRORING_STATE_CMD_RESUME))
- return SCMIRRORING_STATE_PLAYING;
- else if (g_strrstr(str, SCMIRRORING_STATE_CMD_STOP))
- return SCMIRRORING_STATE_TEARDOWN;
- else if (g_strrstr(str, SCMIRRORING_STATE_CMD_DESTROY))
- return SCMIRRORING_STATE_NULL;
-
- return SCMIRRORING_STATE_CREATED;
-}
-
static int __scmirroring_primary_src_get_messages(scmirroring_primary_sink_s *scmirroring, gchar *key, gchar* value)
{
if (g_strrstr(key, "COUPLED_SINK_ADDRESS")) {
/* state messages */
if(g_strcmp0("OK",response[0]) == 0 || g_strcmp0("FAIL",response[0]) == 0){
error_code = __scmirroring_primary_src_get_error(response[0]);
- src_state = __scmirroring_primary_src_get_status(response[1]);
+ src_state = _scmirroring_src_state_convert(response[1]);
if (scmirroring->current_state != src_state) {
scmirroring->current_state = src_state;
#include <scmirroring_secondary_sink.h>
#include <scmirroring_private.h>
-static scmirroring_sink_state_e __scmirroring_secondary_sink_state_convert(MMWFDSinkStateType mm_state)
-{
- scmirroring_sink_state_e state = SCMIRRORING_SINK_STATE_NONE;
-
- switch (mm_state) {
- case MM_WFD_SINK_STATE_NONE:
- state = SCMIRRORING_SINK_STATE_NONE;
- break;
- case MM_WFD_SINK_STATE_NULL:
- state = SCMIRRORING_SINK_STATE_NULL;
- break;
- case MM_WFD_SINK_STATE_PREPARED:
- state = SCMIRRORING_SINK_STATE_PREPARED;
- break;
- case MM_WFD_SINK_STATE_CONNECTED:
- state = SCMIRRORING_SINK_STATE_CONNECTED;
- break;
- case MM_WFD_SINK_STATE_PLAYING:
- state = SCMIRRORING_SINK_STATE_PLAYING;
- break;
- case MM_WFD_SINK_STATE_PAUSED:
- state = SCMIRRORING_SINK_STATE_PAUSED;
- break;
- case MM_WFD_SINK_STATE_DISCONNECTED:
- state = SCMIRRORING_SINK_STATE_DISCONNECTED;
- break;
- default:
- state = SCMIRRORING_SINK_STATE_NONE;
- break;
- }
-
- return state;
-}
-
void __mm_scmirroring_secondary_sink_set_message_cb(int error_type, MMWFDSinkStateType state_type, void *uData)
{
scmirroring_error_e error = _scmirroring_error_convert(__func__, error_type);
- scmirroring_sink_state_e state = __scmirroring_secondary_sink_state_convert(state_type);
+ scmirroring_sink_state_e state = _scmirroring_sink_state_convert(state_type);
scmirroring_secondary_sink_s *handle = (scmirroring_secondary_sink_s *)uData;
/* call application callback */
result = mm_wfd_sink_get_current_state(handle->mm_handle, &mm_state);
if (result == MM_ERROR_NONE) {
- *state = __scmirroring_secondary_sink_state_convert(mm_state);
+ *state = _scmirroring_sink_state_convert(mm_state);
scmirroring_debug("ScreenMirroring current state is [%d]", *state);
}
scmirroring_debug_fleave();
#include <scmirroring_sink.h>
#include <scmirroring_private.h>
-static scmirroring_sink_state_e __scmirroring_sink_state_convert(MMWFDSinkStateType mm_state)
-{
- scmirroring_sink_state_e state = SCMIRRORING_SINK_STATE_NONE;
-
- switch (mm_state) {
- case MM_WFD_SINK_STATE_NONE:
- state = SCMIRRORING_SINK_STATE_NONE;
- break;
- case MM_WFD_SINK_STATE_NULL:
- state = SCMIRRORING_SINK_STATE_NULL;
- break;
- case MM_WFD_SINK_STATE_PREPARED:
- state = SCMIRRORING_SINK_STATE_PREPARED;
- break;
- case MM_WFD_SINK_STATE_CONNECTED:
- state = SCMIRRORING_SINK_STATE_CONNECTED;
- break;
- case MM_WFD_SINK_STATE_PLAYING:
- state = SCMIRRORING_SINK_STATE_PLAYING;
- break;
- case MM_WFD_SINK_STATE_PAUSED:
- state = SCMIRRORING_SINK_STATE_PAUSED;
- break;
- case MM_WFD_SINK_STATE_DISCONNECTED:
- state = SCMIRRORING_SINK_STATE_DISCONNECTED;
- break;
- default:
- state = SCMIRRORING_SINK_STATE_NONE;
- break;
- }
-
- return state;
-}
-
void __mm_scmirroring_sink_set_message_cb(int error_type, MMWFDSinkStateType state_type, void *uData)
{
scmirroring_error_e error = _scmirroring_error_convert(__func__, error_type);
- scmirroring_sink_state_e state = __scmirroring_sink_state_convert(state_type);
+ scmirroring_sink_state_e state = _scmirroring_sink_state_convert(state_type);
scmirroring_sink_s *handle = (scmirroring_sink_s *)uData;
/* call application callback */
result = mm_wfd_sink_get_current_state(handle->mm_handle, &mm_state);
if (result == MM_ERROR_NONE) {
- *state = __scmirroring_sink_state_convert(mm_state);
+ *state = _scmirroring_sink_state_convert(mm_state);
scmirroring_debug("ScreenMirroring current state is [%d]", *state);
}
scmirroring_debug_fleave();
return SCMIRRORING_ERROR_NONE;
}
-static int __scmirroring_src_get_status(gchar *str)
-{
- if (g_strrstr(str, "LISTENING"))
- return SCMIRRORING_STATE_CONNECTION_WAIT;
- else if (g_strrstr(str, "CONNECTED"))
- return SCMIRRORING_STATE_CONNECTED;
- else if (g_strrstr(str, "PLAYING"))
- return SCMIRRORING_STATE_PLAYING;
- else if (g_strrstr(str, "SET"))
- return SCMIRRORING_STATE_READY;
- else if (g_strrstr(str, SCMIRRORING_STATE_CMD_PAUSE))
- return SCMIRRORING_STATE_PAUSED;
- else if (g_strrstr(str, SCMIRRORING_STATE_CMD_RESUME))
- return SCMIRRORING_STATE_PLAYING;
- else if (g_strrstr(str, SCMIRRORING_STATE_CMD_STOP))
- return SCMIRRORING_STATE_TEARDOWN;
- else if (g_strrstr(str, SCMIRRORING_STATE_CMD_DESTROY))
- return SCMIRRORING_STATE_NULL;
-
- return SCMIRRORING_STATE_CREATED;
-}
-
static void __scmirroring_src_set_callback_info(scmirroring_src_s *scmirroring, int error_code, int state)
{
scmirroring_state_cb_s *cb_info = scmirroring->scmirroring_state_cb;
/* if front-half message is "OK" or "FAIL", it is ERROR:STATE pair*/
if(g_strcmp0("OK",response[0]) == 0 || g_strcmp0("FAIL",response[0]) == 0){
error_code = __scmirroring_src_get_error(response[0]);
- src_state = __scmirroring_src_get_status(response[1]);
+ src_state = _scmirroring_src_state_convert(response[1]);
if(response[2] != NULL){
scmirroring_debug("response2 : %s", response[2]);
}
* limitations under the License.
*/
-#include <mm_error.h>
#include <scmirroring_private.h>
scmirroring_error_e _scmirroring_error_convert(const char *func, int error)
return ret;
}
+scmirroring_sink_state_e _scmirroring_sink_state_convert(MMWFDSinkStateType mm_state)
+{
+ scmirroring_sink_state_e state = SCMIRRORING_SINK_STATE_NONE;
+
+ switch (mm_state) {
+ case MM_WFD_SINK_STATE_NONE:
+ state = SCMIRRORING_SINK_STATE_NONE;
+ break;
+ case MM_WFD_SINK_STATE_NULL:
+ state = SCMIRRORING_SINK_STATE_NULL;
+ break;
+ case MM_WFD_SINK_STATE_PREPARED:
+ state = SCMIRRORING_SINK_STATE_PREPARED;
+ break;
+ case MM_WFD_SINK_STATE_CONNECTED:
+ state = SCMIRRORING_SINK_STATE_CONNECTED;
+ break;
+ case MM_WFD_SINK_STATE_PLAYING:
+ state = SCMIRRORING_SINK_STATE_PLAYING;
+ break;
+ case MM_WFD_SINK_STATE_PAUSED:
+ state = SCMIRRORING_SINK_STATE_PAUSED;
+ break;
+ case MM_WFD_SINK_STATE_DISCONNECTED:
+ state = SCMIRRORING_SINK_STATE_DISCONNECTED;
+ break;
+ default:
+ state = SCMIRRORING_SINK_STATE_NONE;
+ break;
+ }
+
+ return state;
+}
+
+scmirroring_state_e _scmirroring_src_state_convert(gchar *str)
+{
+ if (g_strrstr(str, "LISTENING"))
+ return SCMIRRORING_STATE_CONNECTION_WAIT;
+ else if (g_strrstr(str, "CONNECTED"))
+ return SCMIRRORING_STATE_CONNECTED;
+ else if (g_strrstr(str, "PLAYING"))
+ return SCMIRRORING_STATE_PLAYING;
+ else if (g_strrstr(str, "SET"))
+ return SCMIRRORING_STATE_READY;
+ else if (g_strrstr(str, SCMIRRORING_STATE_CMD_PAUSE))
+ return SCMIRRORING_STATE_PAUSED;
+ else if (g_strrstr(str, SCMIRRORING_STATE_CMD_RESUME))
+ return SCMIRRORING_STATE_PLAYING;
+ else if (g_strrstr(str, SCMIRRORING_STATE_CMD_STOP))
+ return SCMIRRORING_STATE_TEARDOWN;
+ else if (g_strrstr(str, SCMIRRORING_STATE_CMD_DESTROY))
+ return SCMIRRORING_STATE_NULL;
+
+ return SCMIRRORING_STATE_CREATED;
+}