Unify duplicated code regarding state converting 59/223359/1
authorhj kim <backto.kim@samsung.com>
Wed, 29 Jan 2020 04:54:08 +0000 (13:54 +0900)
committerhj kim <backto.kim@samsung.com>
Wed, 29 Jan 2020 04:54:08 +0000 (13:54 +0900)
Change-Id: I25a3a751f1c9bbf25e9d4de898c84475b0431c45

include/scmirroring_private.h
src/scmirroring_primary_sink.c
src/scmirroring_secondary_sink.c
src/scmirroring_sink.c
src/scmirroring_src.c
src/scmirroring_util.c

index 46313d3902684a250b62c76ea33ca893f49fe713..75d4529e1e8b2493978fa5f16d73723b0b7f71d6 100644 (file)
@@ -23,6 +23,7 @@
 #include <mm_types.h>
 #include <system_info.h>
 #include <scmirroring_internal.h>
+#include <mmf/mm_wfd_sink.h>
 
 #ifndef TRUE
 #define TRUE 1
@@ -272,6 +273,8 @@ typedef struct {
 
 
 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
 }
index c57c4ec1b54a3446b705128dc8cad0a082c58032..687fb15a4a79d35fd06cf9ca640e510bece69ea4 100644 (file)
 #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 */
@@ -681,7 +647,7 @@ int scmirroring_primary_sink_get_current_state(scmirroring_primary_sink_h scmirr
 
        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();
@@ -901,28 +867,6 @@ static int __scmirroring_primary_src_get_error(gchar *str)
        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")) {
@@ -966,7 +910,7 @@ static void __scmirroring_primary_src_interpret(scmirroring_primary_sink_s *scmi
        /* 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;
index 3909d02035277111dc707cf00b64625243c412d7..dbf873e484600b714eceac18db8fdda2ba91ea81 100755 (executable)
 #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 */
@@ -494,7 +460,7 @@ int scmirroring_secondary_sink_get_current_state(scmirroring_secondary_sink_h sc
 
        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();
index 407a20d0d2e239acae1750a70230e9022bd4e496..b4c5ee1fab2e9a60cde8a7f081cf3951ca700fe4 100644 (file)
 #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 */
@@ -671,7 +637,7 @@ int scmirroring_sink_get_current_state(scmirroring_sink_h scmirroring_sink, scmi
 
        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();
index 5eb7aacb3abdecc6433803bb548040dbd1e01398..4d4fda6c3103a75f47522d7ed168ea6ee04f8943 100644 (file)
@@ -189,28 +189,6 @@ static int __scmirroring_src_get_error(gchar *str)
        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;
@@ -243,7 +221,7 @@ static void __scmirroring_src_interpret(scmirroring_src_s *scmirroring, char *bu
        /* 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]);
                }
index 87329160e8437e4ae82ffec50dd253eab1789121..8c4e88ceb3337bc01ff8fe645912bb7145e5a4fc 100644 (file)
@@ -14,7 +14,6 @@
 * limitations under the License.
 */
 
-#include <mm_error.h>
 #include <scmirroring_private.h>
 
 scmirroring_error_e _scmirroring_error_convert(const char *func, int error)
@@ -56,3 +55,58 @@ 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;
+}