private int mRssi = 0;
private PeerState mState;
private string mStateInfo;
+ private string mImageUrl;
public event PropertyChangedEventHandler PropertyChanged;
public Peer(WiFiDirectPeer peer)
Name = peer.Name;
Address = peer.MacAddress;
mRssi = peer.Rssi;
+ mImageUrl = GetImageUrl(peer.PrimaryType);
Debug("isConnected: " + mWfdPeer.IsConnected);
State = mWfdPeer.IsConnected ? PeerState.Connected : PeerState.Disconnected;
mWfdPeer.ConnectionStateChanged += ConnectionStateChanged;
}
}
+ public string ImageUrl
+ {
+ get
+ {
+ return mImageUrl;
+ }
+ set
+ {
+ mImageUrl = value;
+ OnPropertyChanged("ImageUrl");
+ }
+ }
+
private string GetStateInfo(PeerState state)
{
switch (state)
}
}
+ private string GetImageUrl(WiFiDirectPrimaryDeviceType deviceType)
+ {
+ switch (deviceType)
+ {
+ case WiFiDirectPrimaryDeviceType.Computer:
+ return Resources.GetPath() + "/images/A09_device_computer.png";
+ case WiFiDirectPrimaryDeviceType.InputDevice:
+ return Resources.GetPath() + "/images/A09_device_input_device.png";
+ case WiFiDirectPrimaryDeviceType.Printer:
+ return Resources.GetPath() + "/images/A09_device_printer.png";
+ case WiFiDirectPrimaryDeviceType.Camera:
+ return Resources.GetPath() + "/images/A09_device_camera.png";
+ case WiFiDirectPrimaryDeviceType.Storage:
+ return Resources.GetPath() + "/images/A09_device_storage.png";
+ case WiFiDirectPrimaryDeviceType.NetworkInfrastructure:
+ return Resources.GetPath() + "/images/A09_device_network_infrastructure.png";
+ case WiFiDirectPrimaryDeviceType.Display:
+ return Resources.GetPath() + "/images/A09_device_display.png";
+ case WiFiDirectPrimaryDeviceType.MultimediaDevice:
+ return Resources.GetPath() + "/images/A09_device_multimedia.png";
+ case WiFiDirectPrimaryDeviceType.GameDevice:
+ return Resources.GetPath() + "/images/A09_device_gaming.png";
+ case WiFiDirectPrimaryDeviceType.Telephone:
+ return Resources.GetPath() + "/images/A09_device_telephone.png";
+ default:
+ return Resources.GetPath() + "/images/A09_device_unknown.png";
+ }
+ }
+
}
}