public RemoteConnectionServer( APPLICATION_DATA appData ) { try { m_AppData = appData; m_AppData.AddOnClosing(OnClose, APPLICATION_DATA.CLOSE_ORDER.MIDDLE); m_Log = (ErrorLog)m_AppData.Logger; m_FrameLock = new object(); m_FrameGenerator = (FrameGenerator)m_AppData.FrameGenerator; m_NumberChannels = m_FrameGenerator.GetNumberOfPhysicalChannels(); m_ConsumerID = m_FrameGenerator.GetNewConsumerID(); m_CurrentImageQ = new ThreadSafeQueue<FRAME>[m_NumberChannels]; m_CurrentPlateNumberQ = new ThreadSafeQueue<FRAME>[m_NumberChannels]; m_Log = (ErrorLog)m_AppData.Logger; m_LocalHostPortsTable = new ThreadSafeHashTable(5); m_Server = new List<ConnectionServer>(); } catch (Exception ex) { m_Log.Trace(ex, ErrorLog.LOG_TYPE.FATAL); } }