Add some move constructors and assignment operators to CameraMetadata.

This avoids unnecessary copying of camera metadata which can get
expensive in cases of large camera metadata blobs.

Bug: 71727540

Test: GCA (sanity)
Test: Add CallStack::logStack() in CameraMetadata's move asignment
      operator -> see that it gets called for every insertResultLocked.

Change-Id: I6c75c7ce5267126916c865b028e5f7c7f50b763b
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
diff --git a/services/camera/libcameraservice/device3/Camera3Device.h b/services/camera/libcameraservice/device3/Camera3Device.h
index e13e45f..50944d2 100644
--- a/services/camera/libcameraservice/device3/Camera3Device.h
+++ b/services/camera/libcameraservice/device3/Camera3Device.h
@@ -1102,7 +1102,7 @@
     uint32_t               mNextReprocessShutterFrameNumber;
     // the minimal frame number of the next ZSL still capture shutter
     uint32_t               mNextZslStillShutterFrameNumber;
-    List<CaptureResult>    mResultQueue;
+    std::list<CaptureResult>    mResultQueue;
     std::condition_variable  mResultSignal;
     wp<NotificationListener> mListener;