Camera: Add new minor revision camera.device@3.3
This adds a single new member to the HalStream structure, used by
camera.device@3.2::ICameraDeviceSession.configureStreams, for
HALs to override the requested stream dataSpace.
This override may be used when the requested format is
IMPLEMENTATION_DEFINED.
Test: Builds
Bug: 62358514
Change-Id: Ie43e6cfd2ac52657c9366ff5297daa22c0bfa46c
diff --git a/camera/device/3.3/ICameraDeviceSession.hal b/camera/device/3.3/ICameraDeviceSession.hal
new file mode 100644
index 0000000..764392f
--- /dev/null
+++ b/camera/device/3.3/ICameraDeviceSession.hal
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.camera.device@3.3;
+
+import android.hardware.camera.common@1.0::Status;
+import android.hardware.camera.device@3.2::ICameraDeviceSession;
+import android.hardware.camera.device@3.2::StreamConfiguration;
+
+/**
+ * Camera device active session interface.
+ *
+ * Obtained via ICameraDevice::open(), this interface contains the methods to
+ * configure and request captures from an active camera device.
+ *
+ */
+interface ICameraDeviceSession extends @3.2::ICameraDeviceSession {
+
+ /**
+ * configureStreams_3_3:
+ *
+ * Identical to @3.2::ICameraDeviceSession.configureStreams, except that:
+ *
+ * - The output HalStreamConfiguration now contains an overrideDataspace
+ * field, to be used by the HAL to select a different dataspace for some
+ * use cases when dealing with the IMPLEMENTATION_DEFINED pixel format.
+ *
+ * Clients may invoke either this method or
+ * @3.2::ICameraDeviceSession.configureStreams() for stream configuration.
+ * This method is recommended for clients to use since it provides more
+ * flexibility.
+ */
+ configureStreams_3_3(StreamConfiguration requestedConfiguration)
+ generates (Status status,
+ @3.3::HalStreamConfiguration halConfiguration);
+
+};