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

Commit 4c4cd9c8 authored by Aravind Akella's avatar Aravind Akella Committed by The Android Automerger
Browse files

Change API from flush(handle) to flush(). Call flush on all active sensors in...

Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection.

Change-Id: I4ef2bec80406c517903ab9782dc9eaf3fa8b7f36
parent a8b5982c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ public:
    virtual status_t enableDisable(int handle, bool enabled, nsecs_t samplingPeriodNs,
                                   nsecs_t maxBatchReportLatencyNs, int reservedFlags) = 0;
    virtual status_t setEventRate(int handle, nsecs_t ns) = 0;
    virtual status_t flushSensor(int handle) = 0;
    virtual status_t flush() = 0;
};

// ----------------------------------------------------------------------------
+1 −1
Original line number Diff line number Diff line
@@ -74,7 +74,7 @@ public:
    status_t enableSensor(int32_t handle, int32_t samplingPeriodUs, int maxBatchReportLatencyUs,
                          int reservedFlags) const;
    status_t disableSensor(int32_t handle) const;
    status_t flushSensor(int32_t handle) const;
    status_t flush() const;

private:
    sp<Looper> getLooper() const;
+2 −4
Original line number Diff line number Diff line
@@ -77,10 +77,9 @@ public:
        return reply.readInt32();
    }

    virtual status_t flushSensor(int handle) {
    virtual status_t flush() {
        Parcel data, reply;
        data.writeInterfaceToken(ISensorEventConnection::getInterfaceDescriptor());
        data.writeInt32(handle);
        remote()->transact(FLUSH_SENSOR, data, &reply);
        return reply.readInt32();
    }
@@ -122,8 +121,7 @@ status_t BnSensorEventConnection::onTransact(
        } break;
        case FLUSH_SENSOR: {
            CHECK_INTERFACE(ISensorEventConnection, data, reply);
            int handle = data.readInt32();
            status_t result = flushSensor(handle);
            status_t result = flush();
            reply->writeInt32(result);
            return NO_ERROR;
        } break;
+2 −2
Original line number Diff line number Diff line
@@ -132,8 +132,8 @@ status_t SensorEventQueue::enableSensor(int32_t handle, int32_t samplingPeriodUs
                                                 us2ns(maxBatchReportLatencyUs), reservedFlags);
}

status_t SensorEventQueue::flushSensor(int32_t handle) const {
    return mSensorEventConnection->flushSensor(handle);
status_t SensorEventQueue::flush() const {
    return mSensorEventConnection->flush();
}

status_t SensorEventQueue::disableSensor(int32_t handle) const {
+18 −4
Original line number Diff line number Diff line
@@ -682,6 +682,10 @@ status_t SensorService::flushSensor(const sp<SensorEventConnection>& connection,
  if (sensor == NULL) {
      return BAD_VALUE;
  }
  if (sensor->getSensor().getType() == SENSOR_TYPE_SIGNIFICANT_MOTION) {
      ALOGE("flush called on Significant Motion sensor");
      return INVALID_OPERATION;
  }
  SensorDevice& dev(SensorDevice::getInstance());

  if (dev.getHalDeviceVersion() < SENSORS_DEVICE_API_VERSION_1_1) {
@@ -934,8 +938,18 @@ status_t SensorService::SensorEventConnection::setEventRate(
    return mService->setEventRate(this, handle, samplingPeriodNs);
}

status_t  SensorService::SensorEventConnection::flushSensor(int handle) {
    return mService->flushSensor(this, handle);
status_t  SensorService::SensorEventConnection::flush() {
    Mutex::Autolock _l(mConnectionLock);
    status_t err(NO_ERROR);
    for (size_t i = 0; i < mSensorInfo.size(); ++i) {
        const int handle = mSensorInfo.keyAt(i);
        status_t err_flush = mService->flushSensor(this, handle);
        if (err_flush != NO_ERROR) {
            ALOGE("Flush error handle=%d %s", handle, strerror(-err_flush));
        }
        err = (err_flush != NO_ERROR) ? err_flush : err;
    }
    return err;
}

// ---------------------------------------------------------------------------
Loading