public Runner() { Console.Write("TestDvDeviceCs - starting\n"); DeviceBasic device = new DeviceBasic(); iDeviceList = new List<CpDevice>(); CpDeviceList.ChangeHandler added = new CpDeviceList.ChangeHandler(DeviceAdded); CpDeviceList.ChangeHandler removed = new CpDeviceList.ChangeHandler(DeviceRemoved); CpDeviceListUpnpServiceType list = new CpDeviceListUpnpServiceType("openhome.org", "TestBasic", 1, added, removed); Semaphore sem = new Semaphore(0, 1); sem.WaitOne(1000); Debug.Assert(iDeviceList.Count == 1); TestBasicCp cp = new TestBasicCp(iDeviceList[0]); cp.TestActions(); cp.TestSubscriptions(); list.Dispose(); lock (this) { for (int i = 0; i < iDeviceList.Count; i++) { iDeviceList[i].RemoveRef(); } } device.Dispose(); Console.Write("TestDvDeviceCs - completed\n"); }
public Runner(int aMsearchTimeSecs) { iListFrozen = false; iDeviceList = new List <ControlPoint.ICpDevice>(); ControlPoint.CpDeviceList.ChangeHandler added = new ControlPoint.CpDeviceList.ChangeHandler(DeviceAdded); ControlPoint.CpDeviceList.ChangeHandler removed = new ControlPoint.CpDeviceList.ChangeHandler(DeviceRemoved); ControlPoint.CpDeviceListUpnpServiceType list = new ControlPoint.CpDeviceListUpnpServiceType("upnp.org", "ConnectionManager", 1, added, removed); //CpDeviceListUpnpUuid list = new CpDeviceListUpnpUuid("896659847466-a4badbeaacbc-737837", added, removed); Semaphore sem = new Semaphore(0, 1); sem.WaitOne(aMsearchTimeSecs * 1000); iListFrozen = true; InvokeSync(); // Note that following tests handle the device list changing (i.e. devices being switched on/off) badly Console.Write("\n\n"); int count = iDeviceList.Count; DateTime startTime = DateTime.Now; PollInvoke(); DateTime endTime = DateTime.Now; uint avgActions = 0; if (count > 0) { avgActions = (uint)(iActionCount / count); } double secs = endTime.Subtract(startTime).TotalSeconds; Console.Write("\n" + iActionCount + " actions invoked on " + count + " devices (avg " + avgActions + ") in " + secs + " seconds\n\n"); Console.Write("\n\n"); startTime = DateTime.Now; PollSubscribe(); endTime = DateTime.Now; uint avgSubscriptions = 0; if (count > 0) { avgSubscriptions = (uint)(iSubscriptionCount / count); } secs = endTime.Subtract(startTime).TotalSeconds; Console.Write("\n" + iSubscriptionCount + " subscriptions on " + count + " devices (avg " + avgSubscriptions + ") in " + secs + " seconds\n\n"); list.Dispose(); lock (this) { for (int i = 0; i < iDeviceList.Count; i++) { iDeviceList[i].RemoveRef(); } } Console.Write("Tests completed\n"); }
public Runner(int aMsearchTimeSecs) { iListFrozen = false; iDeviceList = new List<ControlPoint.CpDevice>(); ControlPoint.CpDeviceList.ChangeHandler added = new ControlPoint.CpDeviceList.ChangeHandler(DeviceAdded); ControlPoint.CpDeviceList.ChangeHandler removed = new ControlPoint.CpDeviceList.ChangeHandler(DeviceRemoved); ControlPoint.CpDeviceListUpnpServiceType list = new ControlPoint.CpDeviceListUpnpServiceType("upnp.org", "ConnectionManager", 1, added, removed); //CpDeviceListUpnpUuid list = new CpDeviceListUpnpUuid("896659847466-a4badbeaacbc-737837", added, removed); Semaphore sem = new Semaphore(0, 1); sem.WaitOne(aMsearchTimeSecs * 1000); iListFrozen = true; InvokeSync(); // Note that following tests handle the device list changing (i.e. devices being switched on/off) badly Console.Write("\n\n"); int count = iDeviceList.Count; DateTime startTime = DateTime.Now; PollInvoke(); DateTime endTime = DateTime.Now; uint avgActions = 0; if (count > 0) { avgActions = (uint)(iActionCount / count); } double secs = endTime.Subtract(startTime).TotalSeconds; Console.Write("\n" + iActionCount + " actions invoked on " + count + " devices (avg " + avgActions + ") in " + secs + " seconds\n\n"); Console.Write("\n\n"); startTime = DateTime.Now; PollSubscribe(); endTime = DateTime.Now; uint avgSubscriptions = 0; if (count > 0) { avgSubscriptions = (uint)(iSubscriptionCount / count); } secs = endTime.Subtract(startTime).TotalSeconds; Console.Write("\n" + iSubscriptionCount + " subscriptions on " + count + " devices (avg " + avgSubscriptions + ") in " + secs + " seconds\n\n"); list.Dispose(); lock (this) { for (int i = 0; i < iDeviceList.Count; i++) { iDeviceList[i].RemoveRef(); } } Console.Write("Tests completed\n"); }
public override void findMediaServer() { OpenHome.Net.ControlPoint.CpDeviceList.ChangeHandler added = new OpenHome.Net.ControlPoint.CpDeviceList.ChangeHandler(MediaServerFoundSink); OpenHome.Net.ControlPoint.CpDeviceList.ChangeHandler removed = new OpenHome.Net.ControlPoint.CpDeviceList.ChangeHandler(MediaServerRemovedSink); OpenHome.Net.ControlPoint.CpDeviceListUpnpServiceType list = new OpenHome.Net.ControlPoint.CpDeviceListUpnpServiceType("upnp.org", "ContentDirectory", 1, added, removed); }
public override void findMediaRenderer() { OpenHome.Net.ControlPoint.CpDeviceList.ChangeHandler added = new OpenHome.Net.ControlPoint.CpDeviceList.ChangeHandler(RendererFoundSink); OpenHome.Net.ControlPoint.CpDeviceList.ChangeHandler removed = new OpenHome.Net.ControlPoint.CpDeviceList.ChangeHandler(RendererRemovedSink); OpenHome.Net.ControlPoint.CpDeviceListUpnpServiceType list = new OpenHome.Net.ControlPoint.CpDeviceListUpnpServiceType("upnp.org", "RenderingControl", 1, added, removed); }