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

Commit 12d65752 authored by Chong Zhang's avatar Chong Zhang Committed by Android Git Automerger
Browse files

am 9b365296: Merge "update battery status for audio/video" into lmp-dev

* commit '9b365296':
  update battery status for audio/video
parents 27bda67f 9b365296
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -30,10 +30,18 @@ public:

    virtual void noteStartSensor(int uid, int sensor) = 0;
    virtual void noteStopSensor(int uid, int sensor) = 0;
    virtual void noteStartVideo(int uid) = 0;
    virtual void noteStopVideo(int uid) = 0;
    virtual void noteStartAudio(int uid) = 0;
    virtual void noteStopAudio(int uid) = 0;

    enum {
        NOTE_START_SENSOR_TRANSACTION = IBinder::FIRST_CALL_TRANSACTION,
        NOTE_STOP_SENSOR_TRANSACTION,
        NOTE_START_VIDEO_TRANSACTION,
        NOTE_STOP_VIDEO_TRANSACTION,
        NOTE_START_AUDIO_TRANSACTION,
        NOTE_STOP_AUDIO_TRANSACTION,
    };
};

+56 −0
Original line number Diff line number Diff line
@@ -49,6 +49,34 @@ public:
        data.writeInt32(sensor);
        remote()->transact(NOTE_STOP_SENSOR_TRANSACTION, data, &reply);
    }

    virtual void noteStartVideo(int uid) {
        Parcel data, reply;
        data.writeInterfaceToken(IBatteryStats::getInterfaceDescriptor());
        data.writeInt32(uid);
        remote()->transact(NOTE_START_VIDEO_TRANSACTION, data, &reply);
    }

    virtual void noteStopVideo(int uid) {
        Parcel data, reply;
        data.writeInterfaceToken(IBatteryStats::getInterfaceDescriptor());
        data.writeInt32(uid);
        remote()->transact(NOTE_STOP_VIDEO_TRANSACTION, data, &reply);
    }

    virtual void noteStartAudio(int uid) {
        Parcel data, reply;
        data.writeInterfaceToken(IBatteryStats::getInterfaceDescriptor());
        data.writeInt32(uid);
        remote()->transact(NOTE_START_AUDIO_TRANSACTION, data, &reply);
    }

    virtual void noteStopAudio(int uid) {
        Parcel data, reply;
        data.writeInterfaceToken(IBatteryStats::getInterfaceDescriptor());
        data.writeInt32(uid);
        remote()->transact(NOTE_STOP_AUDIO_TRANSACTION, data, &reply);
    }
};

IMPLEMENT_META_INTERFACE(BatteryStats, "com.android.internal.app.IBatteryStats");
@@ -75,6 +103,34 @@ status_t BnBatteryStats::onTransact(
            reply->writeNoException();
            return NO_ERROR;
        } break;
        case NOTE_START_VIDEO_TRANSACTION: {
            CHECK_INTERFACE(IBatteryStats, data, reply);
            int uid = data.readInt32();
            noteStartVideo(uid);
            reply->writeNoException();
            return NO_ERROR;
        } break;
        case NOTE_STOP_VIDEO_TRANSACTION: {
            CHECK_INTERFACE(IBatteryStats, data, reply);
            int uid = data.readInt32();
            noteStopVideo(uid);
            reply->writeNoException();
            return NO_ERROR;
        } break;
        case NOTE_START_AUDIO_TRANSACTION: {
            CHECK_INTERFACE(IBatteryStats, data, reply);
            int uid = data.readInt32();
            noteStartAudio(uid);
            reply->writeNoException();
            return NO_ERROR;
        } break;
        case NOTE_STOP_AUDIO_TRANSACTION: {
            CHECK_INTERFACE(IBatteryStats, data, reply);
            int uid = data.readInt32();
            noteStopAudio(uid);
            reply->writeNoException();
            return NO_ERROR;
        } break;
        default:
            return BBinder::onTransact(code, data, reply, flags);
    }