IBatteryStats.h 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. /*
  2. * Copyright (C) 2013 The Android Open Source Project
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #ifndef ANDROID_IBATTERYSTATS_H
  17. #define ANDROID_IBATTERYSTATS_H
  18. #include <binder/IInterface.h>
  19. namespace android {
  20. // ----------------------------------------------------------------------
  21. class IBatteryStats : public IInterface
  22. {
  23. public:
  24. DECLARE_META_INTERFACE(BatteryStats);
  25. virtual void noteStartSensor(int uid, int sensor) = 0;
  26. virtual void noteStopSensor(int uid, int sensor) = 0;
  27. virtual void noteStartVideo(int uid) = 0;
  28. virtual void noteStopVideo(int uid) = 0;
  29. virtual void noteStartAudio(int uid) = 0;
  30. virtual void noteStopAudio(int uid) = 0;
  31. virtual void noteResetVideo() = 0;
  32. virtual void noteResetAudio() = 0;
  33. virtual void noteFlashlightOn(int uid) = 0;
  34. virtual void noteFlashlightOff(int uid) = 0;
  35. virtual void noteStartCamera(int uid) = 0;
  36. virtual void noteStopCamera(int uid) = 0;
  37. virtual void noteResetCamera() = 0;
  38. virtual void noteResetFlashlight() = 0;
  39. enum {
  40. NOTE_START_SENSOR_TRANSACTION = IBinder::FIRST_CALL_TRANSACTION,
  41. NOTE_STOP_SENSOR_TRANSACTION,
  42. NOTE_START_VIDEO_TRANSACTION,
  43. NOTE_STOP_VIDEO_TRANSACTION,
  44. NOTE_START_AUDIO_TRANSACTION,
  45. NOTE_STOP_AUDIO_TRANSACTION,
  46. NOTE_RESET_VIDEO_TRANSACTION,
  47. NOTE_RESET_AUDIO_TRANSACTION,
  48. NOTE_FLASHLIGHT_ON_TRANSACTION,
  49. NOTE_FLASHLIGHT_OFF_TRANSACTION,
  50. NOTE_START_CAMERA_TRANSACTION,
  51. NOTE_STOP_CAMERA_TRANSACTION,
  52. NOTE_RESET_CAMERA_TRANSACTION,
  53. NOTE_RESET_FLASHLIGHT_TRANSACTION
  54. };
  55. };
  56. // ----------------------------------------------------------------------
  57. class BnBatteryStats : public BnInterface<IBatteryStats>
  58. {
  59. public:
  60. virtual status_t onTransact( uint32_t code,
  61. const Parcel& data,
  62. Parcel* reply,
  63. uint32_t flags = 0);
  64. };
  65. // ----------------------------------------------------------------------
  66. }; // namespace android
  67. #endif // ANDROID_IBATTERYSTATS_H