public WDSApplication(WDSApplicationType appType) { this._appType = appType; this._appWinReadyToClose = new Dictionary<IAppWindow, bool>(); }
public int closeApplication(WDSApplicationType appType, ADTRecord[] adtRec) { WDSApplication application = WDSApplicationManager.instance().findApplication(appType, adtRec[0]); if (application != null) application.startClosing(); return 0; }
public int startPlugAndPlayApplication(WDSApplicationType appType, List<ADTRecord> adtRecList, ADCRRecord a_selectedADCRRecord) { ADTRecord[] adtRecs = new ADTRecord[adtRecList.Count]; for (int i = 0; i < adtRecList.Count; i++) adtRecs[i] = adtRecList[i]; if (!ADCRManager.instance().canAppAcceptSelDevs(appType, adtRecs)) { GlobalServices.ErrMsg("WDSFrameWindow.startPlugAndPlayApplication()", "Application cannot accept selected devices!"); return -1; } WDSApplication app = new WDSApplication(appType); IAppMainWindow mainWin = _lastCreatedMainWin = ADCRManager.instance().createAppMainWin(appType); if (mainWin == null) { GlobalServices.ErrMsg("startPlugAndPlayApplication()", "createAppMainWin() failed to create application's main window"); return -1; } adtRecList[0].addAssociatedApp(a_selectedADCRRecord); _lastCreatedMainWin.associatedADCRRecord = a_selectedADCRRecord; IAppWindow[] helperWins = mainWin.createHelperWindows(); if (helperWins != null) foreach (IAppWindow window2 in helperWins) window2.createCloseWindowController(); IIOPortHandler[] portHandlers = mainWin.createPortHandlers(adtRecs); mainWin.createCloseWindowController(); app.setWindows(mainWin, helperWins); app.setPortHandlers(portHandlers); try { if (mainWin.initialize() == -1) { GlobalServices.ErrMsg("startPlugAndPlayApplication()", "Application's main window initialization failed!"); return -1; } ((Form) mainWin).MdiParent = this; ((Form) mainWin).Show(); if (helperWins != null) { foreach (IAppWindow window3 in helperWins) { ((Form) window3).MdiParent = this; ((Form) window3).Show(); } } WDSApplicationManager.instance().addApplication(app); return 0; } catch { return -1; } }
public static string uniqApplicationId(WDSApplicationType appType) { return (appType.ToString() + "[" + Interlocked.Increment(ref _uniqAppId).ToString() + "]"); }
public WDSApplication findApplication(WDSApplicationType AppType, ADTRecord adtRec) { foreach (WDSApplication application in this._apps) { if (application.hasDevice(adtRec) && (application.AppType == AppType)) { return application; } } return null; }
public IAppMainWindow createAppMainWin(WDSApplicationType appType) { switch (appType) { case WDSApplicationType.Si4012_CP: return new AppWin_Si4012_CP(); case WDSApplicationType.Si4012_RC: return new AppWin_Si4012_RC(); case WDSApplicationType.Si4020_CP: return new AppWin_Si4020_CP(); case WDSApplicationType.Si4021_CP: return new AppWin_Si4021_CP(); case WDSApplicationType.Si4022_CP: return new AppWin_Si4022_CP(); case WDSApplicationType.Si4320_CP: return new AppWin_Si4320_CP(); case WDSApplicationType.Si4322_CP: return new AppWin_Si4322_CP(); case WDSApplicationType.Si4420_CP: return new AppWin_Si4420_CP(); case WDSApplicationType.Si4421_CP: return new AppWin_Si4421_CP(); case WDSApplicationType.Si4432_CP: return new AppWin_Si4432_CP(); case WDSApplicationType.Si4455_CP: return new AppWin_Si4455_CP(); case WDSApplicationType.Si4455_RC: return new AppWin_Si4455_RC(); case WDSApplicationType.Si4460_CP: return new AppWin_Si4460_CP(); case WDSApplicationType.Si4460_RC: return new AppWin_Si4460_RC(); case WDSApplicationType.Si4520_CP: return new AppWin_Si4520_CP(); case WDSApplicationType.SPITool: return new AppWin_SPITool(); case WDSApplicationType.SPITool_PRO: return new AppWin_SPITool_PRO(); case WDSApplicationType.SPITool_PRO2: return new AppWin_SPITool_PRO2(); case WDSApplicationType.Network_Wizard_CP: return new Network_Wizard_CP(); case WDSApplicationType.Basic_Network_Demo_CP: return new Basic_Network_Demo_CP(); case WDSApplicationType.RKE_Demo_CP: return new RKE_Demo_CP(); case WDSApplicationType.Security_Demo_CP: return new Security_Demo_CP(); case WDSApplicationType.EnergyHarvesting_Demo_CP: return new EnergyHarvesting_Demo_CP(); case WDSApplicationType.RF_To_USB_Network_Demo_CP: return new RF_To_USB_Network_Demo_CP(); case WDSApplicationType.ShelfLabelDemo_CP: return new ShelfLabelDemo_CP(); case WDSApplicationType.EzMacNetwork_Demo_CP: return new EzMacNetwork_Demo_CP(); case WDSApplicationType.IOPHTest: return new AppWin_IOPHTest(); case WDSApplicationType.FTDITest: return new AppWin_FTDITest(); case WDSApplicationType.EZLinkDongleTest: return new AppWin_EZLinkTest(); case WDSApplicationType.EZLinkChat: return new AppWin_EZLinkChat(); case WDSApplicationType.EZLinkTempDemo: return new AppWin_EZLinkTempDemo(); } GlobalServices.ErrMsg("createAppMainWin()", "Unexpected application type: " + appType.ToString()); return null; }
public bool canAppAcceptSelDevs(WDSApplicationType appType, ADTRecord[] adtRecs) { return true; }
public ADCRRecord getADCRRecord(WDSApplicationType appType) { return this._adcrRecordSet[(int) appType]; }