Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3e151e2d authored by Sonny Sasaka's avatar Sonny Sasaka Committed by Gerrit Code Review
Browse files

Merge changes I495946c4,I9aa8eb35,I0a0c683f

* changes:
  Floss: Provide scanner_id for OnAdvertisementFound/Lost
  Floss: Rename on_scan_result_lost to on_advertisement_lost
  Floss: Modify IScannerCallback
parents fa8a18c7 3dca8725
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -29,6 +29,9 @@ using ScannerId = uint8_t;

class AdvertisingFilterOnFoundOnLostInfo {
 public:
  // For MSFT-based advertisement events, the monitor handle associates every event with the monitor
  // filter this event comes from.
  uint8_t monitor_handle;
  uint8_t scanner_id;
  uint8_t filter_index;
  uint8_t advertiser_state;
+3 −3
Original line number Diff line number Diff line
@@ -86,13 +86,13 @@ struct MsftExtensionManager::impl {
    ASSERT(view.IsValid());

    // The monitor state is 0x00 when the controller stops monitoring the device.
    if (view.GetMonitorState() == 0x00) {
    if (view.GetMonitorState() == 0x00 || view.GetMonitorState() == 0x01) {
      AdvertisingFilterOnFoundOnLostInfo on_found_on_lost_info;
      on_found_on_lost_info.advertiser_address_type = view.GetAddressType();
      on_found_on_lost_info.advertiser_address = view.GetBdAddr();
      on_found_on_lost_info.advertiser_state = view.GetMonitorState();
      on_found_on_lost_info.monitor_handle = view.GetMonitorHandle();
      scanning_callbacks_->OnTrackAdvFoundLost(on_found_on_lost_info);
    } else if (view.GetMonitorState() == 0x01) {
      // TODO: Bubble up this event via `OnScanResult`.
    } else {
      LOG_WARN("The Microsoft vendor event monitor state is invalid.");
      return;
+8 −2
Original line number Diff line number Diff line
@@ -333,9 +333,15 @@ impl IScannerCallback for ScannerCallback {
        }
    }

    fn on_scan_result_lost(&self, scan_result: ScanResult) {
    fn on_advertisement_found(&self, scanner_id: u8, scan_result: ScanResult) {
        if self.context.lock().unwrap().active_scanner_ids.len() > 0 {
            print_info!("Scan result lost: {:#?}", scan_result);
            print_info!("Advertisement found for scanner_id {} : {:#?}", scanner_id, scan_result);
        }
    }

    fn on_advertisement_lost(&self, scanner_id: u8, scan_result: ScanResult) {
        if self.context.lock().unwrap().active_scanner_ids.len() > 0 {
            print_info!("Advertisement lost for scanner_id {} : {:#?}", scanner_id, scan_result);
        }
    }

+7 −2
Original line number Diff line number Diff line
@@ -339,8 +339,13 @@ impl IScannerCallback for IScannerCallbackDBus {
        dbus_generated!()
    }

    #[dbus_method("OnScanResultLost")]
    fn on_scan_result_lost(&self, scan_result: ScanResult) {
    #[dbus_method("OnAdvertisementFound")]
    fn on_advertisement_found(&self, scanner_id: u8, scan_result: ScanResult) {
        dbus_generated!()
    }

    #[dbus_method("OnAdvertisementLost")]
    fn on_advertisement_lost(&self, scanner_id: u8, scan_result: ScanResult) {
        dbus_generated!()
    }

+7 −2
Original line number Diff line number Diff line
@@ -299,8 +299,13 @@ impl IScannerCallback for ScannerCallbackDBus {
        dbus_generated!()
    }

    #[dbus_method("OnScanResultLost")]
    fn on_scan_result_lost(&self, scan_result: ScanResult) {
    #[dbus_method("OnAdvertisementFound")]
    fn on_advertisement_found(&self, scanner_id: u8, scan_result: ScanResult) {
        dbus_generated!()
    }

    #[dbus_method("OnAdvertisementLost")]
    fn on_advertisement_lost(&self, scanner_id: u8, scan_result: ScanResult) {
        dbus_generated!()
    }

Loading