[WiFi][TCSACR-77] Add RssiLevel property 05/145005/1
authorchleun.moon <chleun.moon@samsung.com>
Mon, 21 Aug 2017 02:28:47 +0000 (11:28 +0900)
committerchleun.moon <chleun.moon@samsung.com>
Mon, 21 Aug 2017 02:28:51 +0000 (11:28 +0900)
Change-Id: I5007f85f46602be5d6346db7f4856cba59ea1ec0
Signed-off-by: cheoleun <chleun.moon@samsung.com>
src/Tizen.Network.WiFi/Interop/Interop.WiFi.cs
src/Tizen.Network.WiFi/Tizen.Network.WiFi/WiFiNetwork.cs

index 3d01a60..96f75fe 100755 (executable)
@@ -121,6 +121,8 @@ internal static partial class Interop
             internal static extern int GetBssid(SafeWiFiAPHandle ap, out IntPtr bssid);
             [DllImport(Libraries.WiFi, EntryPoint = "wifi_manager_ap_get_rssi")]
             internal static extern int GetRssi(SafeWiFiAPHandle ap, out int rssi);
+            [DllImport(Libraries.WiFi, EntryPoint = "wifi_manager_ap_get_rssi_level")]
+            internal static extern int GetRssiLevel(SafeWiFiAPHandle ap, out int rssi_level);
             [DllImport(Libraries.WiFi, EntryPoint = "wifi_manager_ap_get_frequency")]
             internal static extern int GetFrequency(SafeWiFiAPHandle ap, out int frequency);
             [DllImport(Libraries.WiFi, EntryPoint = "wifi_manager_ap_get_max_speed")]
index c57d807..4e351b0 100755 (executable)
@@ -208,6 +208,27 @@ namespace Tizen.Network.WiFi
         }
 
         /// <summary>
+        /// The Received signal strength indication(RSSI).
+        /// </summary>
+        /// <since_tizen> 3 </since_tizen>
+        /// <value>Represents Rssi level of WiFi.</value>
+        /// <feature>http://tizen.org/feature/network.wifi</feature>
+        /// <exception cref="NotSupportedException">Thrown while setting this property when WiFi is not supported.</exception>
+        public WiFiRssiLevel RssiLevel
+        {
+            get
+            {
+                int rssi;
+                int ret = Interop.WiFi.AP.GetRssiLevel(_apHandle, out rssi);
+                if (ret != (int)WiFiError.None)
+                {
+                    Log.Error(Globals.LogTag, "Failed to get rssi level, Error - " + (WiFiError)ret);
+                }
+                return (WiFiRssiLevel)rssi;
+            }
+        }
+
+        /// <summary>
         /// The max speed (Mbps).
         /// </summary>
         /// <since_tizen> 3 </since_tizen>