Exemple #1
0
 /// <summary>
 /// Scan for nearby BLE device advertisements that match <paramref name="filter" />. Stop scanning after
 /// <see cref="DefaultScanTimeout" />
 /// </summary>
 /// <param name="adapter">The adapter to use for scanning</param>
 /// <param name="advertisementDiscovered">Callback to notify for each discovered advertisement</param>
 /// <param name="filter">
 /// Scan filter that will ignore broadcast advertisements that do not match.
 /// <c>new ScanFilter.Factory(){}.CreateFilter()</c>
 /// </param>
 public static Task ScanForBroadcasts(this IBluetoothLowEnergyAdapter adapter, ScanFilter filter,
                                      Action <IBlePeripheral> advertisementDiscovered)
 {
     Contract.Requires <ArgumentNullException>(adapter != null);
     return(ScanForBroadcasts(adapter, filter, advertisementDiscovered, DefaultScanTimeout));
 }
Exemple #2
0
 /// <summary>
 /// Scan for nearby BLE device advertisements that match <paramref name="filter" />. Stop scanning when
 /// <paramref name="ct" /> is cancelled.
 /// </summary>
 /// <param name="adapter">The adapter to use for scanning</param>
 /// <param name="advertisementDiscovered">Callback to notify for each discovered advertisement</param>
 /// <param name="filter">
 /// Scan filter that will ignore broadcast advertisements that do not match.
 /// <c>new ScanFilter.Factory(){}.CreateFilter()</c>
 /// </param>
 /// <param name="ct">Scan will run continuously until this token is cancelled</param>
 public static Task ScanForBroadcasts(this IBluetoothLowEnergyAdapter adapter, ScanFilter filter,
                                      Action <IBlePeripheral> advertisementDiscovered, CancellationToken ct)
 {
     Contract.Requires <ArgumentNullException>(adapter != null);
     // ReSharper disable once PossibleNullReferenceException
     return(adapter.ScanForBroadcasts(filter, Observer.Create(advertisementDiscovered), ct));
 }
Exemple #3
0
 /// <summary>
 /// Scan for nearby BLE device advertisements that match <paramref name="filter" />. Stop scanning after
 /// <paramref name="timeout" />
 /// </summary>
 /// <param name="adapter">The adapter to use for scanning</param>
 /// <param name="advertisementDiscovered">Callback to notify for each discovered advertisement</param>
 /// <param name="timeout">cancel scan after this length of time</param>
 /// <param name="filter">
 /// Scan filter that will ignore broadcast advertisements that do not match.
 /// <c>new ScanFilter.Factory(){}.CreateFilter()</c>
 /// </param>
 public static Task ScanForBroadcasts(this IBluetoothLowEnergyAdapter adapter, ScanFilter filter,
                                      Action <IBlePeripheral> advertisementDiscovered, TimeSpan timeout)
 {
     Contract.Requires <ArgumentNullException>(adapter != null);
     return(ScanForBroadcasts(
                adapter,
                filter,
                advertisementDiscovered,
                new CancellationTokenSource(timeout).Token));
 }
Exemple #4
0
 /// <summary>
 /// Scan for nearby BLE device advertisements that match <paramref name="filter" />. Stop scanning after
 /// <paramref name="timeout" />
 /// </summary>
 /// <param name="adapter">The adapter to use for scanning</param>
 /// <param name="advertisementDiscovered">Callback to notify for each discovered advertisement</param>
 /// <param name="timeout">cancel scan after this length of time</param>
 /// <param name="filter">
 /// Scan filter that will ignore broadcast advertisements that do not match.
 /// <see cref="ScanFilter.Factory" />
 /// </param>
 public static Task ScanForBroadcasts(this IBluetoothLowEnergyAdapter adapter, ScanFilter filter,
                                      IObserver <IBlePeripheral> advertisementDiscovered, TimeSpan timeout)
 {
     Contract.Requires <ArgumentNullException>(adapter != null);
     // ReSharper disable once PossibleNullReferenceException
     return(adapter.ScanForBroadcasts(
                filter,
                advertisementDiscovered,
                new CancellationTokenSource(timeout).Token));
 }