Implement camera parameter set/get methods

This change implements methods to set and get camera parameters
including the brightness and the contrast of video frames.

EVS manager allows that multiple applications subscribe to a single
camera stream and, to avoid any conflicted requests to modify camera
parameters, only a master client to change parameters.  A EVS client can
request to become a master client and it will be the only master client
until either it dies or explicitly gives it up.  EVS manager will
decline any request to be a master if there is already an active master
client.

When a master client changes a camera parameter, EVS service will notify
all active clients subscribed to same camera instance.

If non-master clients make a parameter request, EVS service will reject
and return an error code.

Bug: 138328396
Test: Build & Run on Hawk
Change-Id: Ieb43af7be9ea66a2134f2ab73159d7ca2fff4a8e
Signed-off-by: Changyeon Jo <changyeon@google.com>
10 files changed
tree: 46c4d6d3008ae8d515c4eac1f1d9fabe5ec0870e
  1. car-bugreportd/
  2. car-default-input-service/
  3. car-lib/
  4. car-maps-placeholder/
  5. car-systemtest-lib/
  6. car-test-lib/
  7. car-usb-handler/
  8. car_product/
  9. EncryptionRunner/
  10. evs/
  11. FrameworkPackageStubs/
  12. media-router/
  13. obd2-lib/
  14. procfs-inspector/
  15. service/
  16. tests/
  17. tools/
  18. user/
  19. vehicle-hal-support-lib/
  20. .clang-format
  21. .gitignore
  22. Android.mk
  23. CleanSpec.mk
  24. OWNERS
  25. PREUPLOAD.cfg
  26. README.md
README.md

Native (C++) code format is required to be compatible with .clang-format file. Run

git clang-format --style=file --extension='h,cpp,cc' HEAD~

Note that clang-format is not desirable for Android java files. Therefore the command line above is limited to specific extensions.