/// <summary> /// Handles connecting to and disconnecting from a set of potential devices by their definition /// </summary> /// <param name="filterDeviceDefinitions">Device definitions to connect to and disconnect from</param> /// <param name="pollMilliseconds">Poll interval in milliseconds, or null if checking is called externally</param> public DeviceListener(IEnumerable <FilterDeviceDefinition> filterDeviceDefinitions, int?pollMilliseconds) { FilterDeviceDefinitions.AddRange(filterDeviceDefinitions); if (pollMilliseconds.HasValue) { _PollTimer = new timer(pollMilliseconds.Value); _PollTimer.Elapsed += _PollTimer_Elapsed; } }
/// <summary> /// Handles connecting to and disconnecting from a set of potential devices by their definition /// </summary> /// <param name="filterDeviceDefinitions">Device definitions to connect to and disconnect from</param> /// <param name="pollMilliseconds">Poll interval in milliseconds, or null if checking is called externally</param> public DeviceListener(IEnumerable <FilterDeviceDefinition> filterDeviceDefinitions, int?pollMilliseconds) { FilterDeviceDefinitions.AddRange(filterDeviceDefinitions); _ListenSemaphoreSlim = new SemaphoreSlim(1, 1); if (!pollMilliseconds.HasValue) { return; } _PollTimer = new timer(pollMilliseconds.Value); _PollTimer.Elapsed += _PollTimer_Elapsed; }