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

Commit 9f315364 authored by Eva Chen's avatar Eva Chen Committed by Android (Google) Code Review
Browse files

Merge "Add AIDL conversion for Limited Axes IMU sensors"

parents 0bce09f9 17561667
Loading
Loading
Loading
Loading
+65 −1
Original line number Diff line number Diff line
@@ -250,6 +250,41 @@ void convertToSensorEvent(const Event &src, sensors_event_t *dst) {
            break;
        }

        case SensorType::ACCELEROMETER_LIMITED_AXES:
        case SensorType::GYROSCOPE_LIMITED_AXES:
            dst->limited_axes_imu.x = src.payload.get<Event::EventPayload::limitedAxesImu>().x;
            dst->limited_axes_imu.y = src.payload.get<Event::EventPayload::limitedAxesImu>().y;
            dst->limited_axes_imu.z = src.payload.get<Event::EventPayload::limitedAxesImu>().z;
            dst->limited_axes_imu.x_supported =
                    src.payload.get<Event::EventPayload::limitedAxesImu>().xSupported;
            dst->limited_axes_imu.y_supported =
                    src.payload.get<Event::EventPayload::limitedAxesImu>().ySupported;
            dst->limited_axes_imu.z_supported =
                    src.payload.get<Event::EventPayload::limitedAxesImu>().zSupported;
            break;

        case SensorType::ACCELEROMETER_LIMITED_AXES_UNCALIBRATED:
        case SensorType::GYROSCOPE_LIMITED_AXES_UNCALIBRATED:
            dst->limited_axes_imu_uncalibrated.x_uncalib =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().x;
            dst->limited_axes_imu_uncalibrated.y_uncalib =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().y;
            dst->limited_axes_imu_uncalibrated.z_uncalib =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().z;
            dst->limited_axes_imu_uncalibrated.x_bias =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().xBias;
            dst->limited_axes_imu_uncalibrated.y_bias =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().yBias;
            dst->limited_axes_imu_uncalibrated.z_bias =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().zBias;
            dst->limited_axes_imu_uncalibrated.x_supported =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().xSupported;
            dst->limited_axes_imu_uncalibrated.y_supported =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().ySupported;
            dst->limited_axes_imu_uncalibrated.z_supported =
                    src.payload.get<Event::EventPayload::limitedAxesImuUncal>().zSupported;
            break;

        default: {
            CHECK_GE((int32_t)src.sensorType, (int32_t)SensorType::DEVICE_PRIVATE_BASE);

@@ -409,6 +444,35 @@ void convertFromSensorEvent(const sensors_event_t &src, Event *dst) {
            break;
        }

        case SensorType::ACCELEROMETER_LIMITED_AXES:
        case SensorType::GYROSCOPE_LIMITED_AXES: {
            Event::EventPayload::LimitedAxesImu limitedAxesImu;
            limitedAxesImu.x = src.limited_axes_imu.x;
            limitedAxesImu.y = src.limited_axes_imu.y;
            limitedAxesImu.z = src.limited_axes_imu.z;
            limitedAxesImu.xSupported = src.limited_axes_imu.x_supported;
            limitedAxesImu.ySupported = src.limited_axes_imu.y_supported;
            limitedAxesImu.zSupported = src.limited_axes_imu.z_supported;
            dst->payload.set<Event::EventPayload::Tag::limitedAxesImu>(limitedAxesImu);
            break;
        }

        case SensorType::ACCELEROMETER_LIMITED_AXES_UNCALIBRATED:
        case SensorType::GYROSCOPE_LIMITED_AXES_UNCALIBRATED: {
            Event::EventPayload::LimitedAxesImuUncal limitedAxesImuUncal;
            limitedAxesImuUncal.x = src.limited_axes_imu_uncalibrated.x_uncalib;
            limitedAxesImuUncal.y = src.limited_axes_imu_uncalibrated.y_uncalib;
            limitedAxesImuUncal.z = src.limited_axes_imu_uncalibrated.z_uncalib;
            limitedAxesImuUncal.xBias = src.limited_axes_imu_uncalibrated.x_bias;
            limitedAxesImuUncal.yBias = src.limited_axes_imu_uncalibrated.y_bias;
            limitedAxesImuUncal.zBias = src.limited_axes_imu_uncalibrated.z_bias;
            limitedAxesImuUncal.xSupported = src.limited_axes_imu_uncalibrated.x_supported;
            limitedAxesImuUncal.ySupported = src.limited_axes_imu_uncalibrated.y_supported;
            limitedAxesImuUncal.zSupported = src.limited_axes_imu_uncalibrated.z_supported;
            dst->payload.set<Event::EventPayload::Tag::limitedAxesImuUncal>(limitedAxesImuUncal);
            break;
        }

        default: {
            CHECK_GE((int32_t)dst->sensorType, (int32_t)SensorType::DEVICE_PRIVATE_BASE);