Fix clang-tidy warnings in camera.

* Add explicit keyword to conversion constructors.
Bug: 28341362
* Use const reference type for read-only parameters.
Bug: 30407689
* Use const reference type to avoid unnecessary copy.
Bug: 30413862
Test: build with WITH_TIDY=1

Change-Id: I71d3008da843ba5f1df1a73a320fb2af6ceffa16
Merged-In: I71d3008da843ba5f1df1a73a320fb2af6ceffa16
diff --git a/services/camera/libcameraservice/device2/Camera2Device.cpp b/services/camera/libcameraservice/device2/Camera2Device.cpp
index d74f976..462077a 100644
--- a/services/camera/libcameraservice/device2/Camera2Device.cpp
+++ b/services/camera/libcameraservice/device2/Camera2Device.cpp
@@ -930,7 +930,7 @@
 
 status_t Camera2Device::MetadataQueue::freeBuffers(
         List<camera_metadata_t*>::iterator start,
-        List<camera_metadata_t*>::iterator end)
+        const List<camera_metadata_t*>::iterator& end)
 {
     ATRACE_CALL();
     while (start != end) {
@@ -1045,7 +1045,7 @@
 }
 
 status_t Camera2Device::StreamAdapter::connectToDevice(
-        sp<ANativeWindow> consumer,
+        const sp<ANativeWindow>& consumer,
         uint32_t width, uint32_t height, int format, size_t size) {
     ATRACE_CALL();
     status_t res;
diff --git a/services/camera/libcameraservice/device2/Camera2Device.h b/services/camera/libcameraservice/device2/Camera2Device.h
index b4d343c..d471508 100644
--- a/services/camera/libcameraservice/device2/Camera2Device.h
+++ b/services/camera/libcameraservice/device2/Camera2Device.h
@@ -35,7 +35,7 @@
  */
 class Camera2Device: public CameraDeviceBase {
   public:
-    Camera2Device(int id);
+    explicit Camera2Device(int id);
 
     virtual ~Camera2Device();
 
@@ -148,7 +148,7 @@
       private:
         status_t signalConsumerLocked();
         status_t freeBuffers(List<camera_metadata_t*>::iterator start,
-                List<camera_metadata_t*>::iterator end);
+                const List<camera_metadata_t*>::iterator& end);
 
         camera2_device_t *mHal2Device;
 
@@ -201,7 +201,7 @@
      */
     class StreamAdapter: public camera2_stream_ops, public virtual RefBase {
       public:
-        StreamAdapter(camera2_device_t *d);
+        explicit StreamAdapter(camera2_device_t *d);
 
         ~StreamAdapter();
 
@@ -215,7 +215,7 @@
          * be equal to the size in bytes of the buffers to allocate for the
          * stream. For other formats, the size parameter is ignored.
          */
-        status_t connectToDevice(sp<ANativeWindow> consumer,
+        status_t connectToDevice(const sp<ANativeWindow>& consumer,
                 uint32_t width, uint32_t height, int format, size_t size);
 
         status_t release();
@@ -287,7 +287,7 @@
      */
     class ReprocessStreamAdapter: public camera2_stream_in_ops, public virtual RefBase {
       public:
-        ReprocessStreamAdapter(camera2_device_t *d);
+        explicit ReprocessStreamAdapter(camera2_device_t *d);
 
         ~ReprocessStreamAdapter();