void BusResetLoop() { ManagedBusManager busMgr = new ManagedBusManager(); List<IntPtr> callbackHandles = new List<IntPtr>(); // Register bus events IntPtr busResetHandle = busMgr.RegisterCallback(OnBusReset, ManagedCallbackType.BusReset, IntPtr.Zero); IntPtr busArrivalHandle = busMgr.RegisterCallback(OnBusArrival, ManagedCallbackType.Arrival, IntPtr.Zero); IntPtr busRemovalHandle = busMgr.RegisterCallback(OnBusRemoval, ManagedCallbackType.Removal, IntPtr.Zero); callbackHandles.Add(busResetHandle); callbackHandles.Add(busArrivalHandle); callbackHandles.Add(busRemovalHandle); // Prevent exit if CTL+C is pressed. Console.TreatControlCAsInput = true; Console.WriteLine("Press any key to exit...\n"); ConsoleKeyInfo cki = Console.ReadKey(); // Unregister bus events foreach (IntPtr currHandle in callbackHandles) { busMgr.UnregisterCallback(currHandle); } }
void BusResetLoop() { ManagedBusManager busMgr = new ManagedBusManager(); List <IntPtr> callbackHandles = new List <IntPtr>(); // Register bus events IntPtr busResetHandle = busMgr.RegisterCallback(OnBusReset, ManagedCallbackType.BusReset, IntPtr.Zero); IntPtr busArrivalHandle = busMgr.RegisterCallback(OnBusArrival, ManagedCallbackType.Arrival, IntPtr.Zero); IntPtr busRemovalHandle = busMgr.RegisterCallback(OnBusRemoval, ManagedCallbackType.Removal, IntPtr.Zero); callbackHandles.Add(busResetHandle); callbackHandles.Add(busArrivalHandle); callbackHandles.Add(busRemovalHandle); // Prevent exit if CTL+C is pressed. Console.TreatControlCAsInput = true; Console.WriteLine("Press any key to exit...\n"); ConsoleKeyInfo cki = Console.ReadKey(); // Unregister bus events foreach (IntPtr currHandle in callbackHandles) { busMgr.UnregisterCallback(currHandle); } }
private void InitializeCameraSelectionData() { HideGigEInformation(); m_busMgr = new ManagedBusManager(); m_cameraInfoPanel = new CameraInformationDisplayPanel(); m_cameraInfoDisplayPanel.Controls.Add(m_cameraInfoPanel); m_GigEEnumerationIsDisabled = EnumerationController.IsEnumerationDisabled(InterfaceType.GigE); m_gigEInfoPanel = new GigEInformationDisplayPanel(); m_gigeInfoDisplayPanel.Controls.Add(m_gigEInfoPanel); m_activeDialogs = new Dictionary <uint, DialogHolder>(); m_timer = new System.Windows.Forms.Timer(); m_timer.Interval = 2000; m_timer.Tick += new EventHandler(m_timer_Tick); try { m_busResetHandle = m_busMgr.RegisterCallback(OnBusReset, ManagedCallbackType.BusReset, IntPtr.Zero); } catch (FC2Exception ex) { BasePage.ShowErrorMessageDialog("Error registering bus reset callback.", ex); ex.Dispose(); } m_isLadybugGUI = LadybugChecker.IsLadybugDLLPresent(); if (m_isLadybugGUI == true) { this.Text = "Ladybug Camera Selection"; } else { FC2Version version = ManagedUtilities.libraryVersion; this.Text = string.Format( "FlyCapture2 Camera Selection {0}.{1}.{2}.{3}", version.major, version.minor, version.type, version.build); } }