Merge "Reland "codec2: C2VDAAdaptorProxy Implementation""
diff --git a/C2VDAComponent.cpp b/C2VDAComponent.cpp
index c39dd01..ede61ba 100644
--- a/C2VDAComponent.cpp
+++ b/C2VDAComponent.cpp
@@ -225,7 +225,7 @@
 }
 
 c2_status_t C2VDAComponentIntf::query_vb(
-        const std::vector<C2Param* const>& stackParams,
+        const std::vector<C2Param*>& stackParams,
         const std::vector<C2Param::Index>& heapParamIndices, c2_blocking_t mayBlock,
         std::vector<std::unique_ptr<C2Param>>* const heapParams) const {
     UNUSED(mayBlock);
@@ -261,7 +261,7 @@
 }
 
 c2_status_t C2VDAComponentIntf::config_vb(
-        const std::vector<C2Param* const>& params, c2_blocking_t mayBlock,
+        const std::vector<C2Param*>& params, c2_blocking_t mayBlock,
         std::vector<std::unique_ptr<C2SettingResult>>* const failures) {
     UNUSED(mayBlock);
     c2_status_t err = C2_OK;
@@ -503,7 +503,7 @@
 
 void C2VDAComponent::fetchParametersFromIntf() {
     C2StreamFormatConfig::input codecProfile;
-    std::vector<C2Param* const> stackParams{&codecProfile};
+    std::vector<C2Param*> stackParams{&codecProfile};
     CHECK_EQ(mIntf->query_vb(stackParams, {}, C2_DONT_BLOCK, nullptr), C2_OK);
     // The value should be guaranteed to be within media::VideoCodecProfile enum range by component
     // interface.
@@ -1363,7 +1363,7 @@
 }
 
 c2_status_t C2VDAComponentStore::query_sm(
-        const std::vector<C2Param* const>& stackParams,
+        const std::vector<C2Param*>& stackParams,
         const std::vector<C2Param::Index>& heapParamIndices,
         std::vector<std::unique_ptr<C2Param>>* const heapParams) const {
     UNUSED(stackParams);
@@ -1373,7 +1373,7 @@
 }
 
 c2_status_t C2VDAComponentStore::config_sm(
-        const std::vector<C2Param* const>& params,
+        const std::vector<C2Param*>& params,
         std::vector<std::unique_ptr<C2SettingResult>>* const failures) {
     UNUSED(params);
     UNUSED(failures);
diff --git a/include/C2VDAComponent.h b/include/C2VDAComponent.h
index cfc2720..1b05d6b 100644
--- a/include/C2VDAComponent.h
+++ b/include/C2VDAComponent.h
@@ -40,11 +40,11 @@
     virtual C2String getName() const override;
     virtual c2_node_id_t getId() const override;
     virtual c2_status_t query_vb(
-            const std::vector<C2Param* const>& stackParams,
+            const std::vector<C2Param*>& stackParams,
             const std::vector<C2Param::Index>& heapParamIndices, c2_blocking_t mayBlock,
             std::vector<std::unique_ptr<C2Param>>* const heapParams) const override;
     virtual c2_status_t config_vb(
-            const std::vector<C2Param* const>& params, c2_blocking_t mayBlock,
+            const std::vector<C2Param*>& params, c2_blocking_t mayBlock,
             std::vector<std::unique_ptr<C2SettingResult>>* const failures) override;
     virtual c2_status_t createTunnel_sm(c2_node_id_t targetComponent) override;
     virtual c2_status_t releaseTunnel_sm(c2_node_id_t targetComponent) override;
@@ -337,11 +337,11 @@
     c2_status_t querySupportedValues_sm(
             std::vector<C2FieldSupportedValuesQuery>& fields) const override;
 
-    c2_status_t query_sm(const std::vector<C2Param* const>& stackParams,
+    c2_status_t query_sm(const std::vector<C2Param*>& stackParams,
                          const std::vector<C2Param::Index>& heapParamIndices,
                          std::vector<std::unique_ptr<C2Param>>* const heapParams) const override;
 
-    c2_status_t config_sm(const std::vector<C2Param* const>& params,
+    c2_status_t config_sm(const std::vector<C2Param*>& params,
                           std::vector<std::unique_ptr<C2SettingResult>>* const failures) override;
 
 private:
diff --git a/tests/C2VDACompIntf_test.cpp b/tests/C2VDACompIntf_test.cpp
index bccc3ad..1c78ab4 100644
--- a/tests/C2VDACompIntf_test.cpp
+++ b/tests/C2VDACompIntf_test.cpp
@@ -42,22 +42,22 @@
     ~C2VDACompIntfTest() override {}
 
     template <typename T>
-    void testReadOnlyParam(const T* expected, const T* invalid);
+    void testReadOnlyParam(const T* expected, T* invalid);
 
     template <typename T>
-    void checkReadOnlyFailureOnConfig(const T* param);
+    void checkReadOnlyFailureOnConfig(T* param);
 
     template <typename T>
-    void testReadOnlyParamOnStack(const T* expected, const T* invalid);
+    void testReadOnlyParamOnStack(const T* expected, T* invalid);
 
     template <typename T>
-    void testReadOnlyParamOnHeap(const T* expected, const T* invalid);
+    void testReadOnlyParamOnHeap(const T* expected, T* invalid);
 
     template <typename T>
-    void testWritableParam(const T* const newParam);
+    void testWritableParam(T* newParam);
 
     template <typename T>
-    void testInvalidWritableParam(const T* const invalidParam);
+    void testInvalidWritableParam(T* invalidParam);
 
     template <typename T>
     void testWritableVideoSizeParam(int32_t widthMin, int32_t widthMax, int32_t widthStep,
@@ -67,14 +67,14 @@
 };
 
 template <typename T>
-void C2VDACompIntfTest::testReadOnlyParam(const T* expected, const T* invalid) {
+void C2VDACompIntfTest::testReadOnlyParam(const T* expected, T* invalid) {
     testReadOnlyParamOnStack(expected, invalid);
     testReadOnlyParamOnHeap(expected, invalid);
 }
 
 template <typename T>
-void C2VDACompIntfTest::checkReadOnlyFailureOnConfig(const T* param) {
-    std::vector<C2Param* const> params{(C2Param* const)param};
+void C2VDACompIntfTest::checkReadOnlyFailureOnConfig(T* param) {
+    std::vector<C2Param*> params{param};
     std::vector<std::unique_ptr<C2SettingResult>> failures;
     ASSERT_EQ(C2_BAD_VALUE, mIntf->config_vb(params, C2_DONT_BLOCK, &failures));
     ASSERT_EQ(1u, failures.size());
@@ -82,9 +82,9 @@
 }
 
 template <typename T>
-void C2VDACompIntfTest::testReadOnlyParamOnStack(const T* expected, const T* invalid) {
+void C2VDACompIntfTest::testReadOnlyParamOnStack(const T* expected, T* invalid) {
     T param;
-    std::vector<C2Param* const> stackParams{&param};
+    std::vector<C2Param*> stackParams{&param};
     ASSERT_EQ(C2_OK, mIntf->query_vb(stackParams, {}, C2_DONT_BLOCK, nullptr));
     EXPECT_EQ(*expected, param);
 
@@ -97,7 +97,7 @@
 }
 
 template <typename T>
-void C2VDACompIntfTest::testReadOnlyParamOnHeap(const T* expected, const T* invalid) {
+void C2VDACompIntfTest::testReadOnlyParamOnHeap(const T* expected, T* invalid) {
     std::vector<std::unique_ptr<C2Param>> heapParams;
 
     uint32_t index = expected->index();
@@ -117,8 +117,8 @@
 }
 
 template <typename T>
-void C2VDACompIntfTest::testWritableParam(const T* const newParam) {
-    std::vector<C2Param* const> params{(C2Param* const)newParam};
+void C2VDACompIntfTest::testWritableParam(T* newParam) {
+    std::vector<C2Param*> params{newParam};
     std::vector<std::unique_ptr<C2SettingResult>> failures;
     ASSERT_EQ(C2_OK, mIntf->config_vb(params, C2_DONT_BLOCK, &failures));
     EXPECT_EQ(0u, failures.size());
@@ -126,7 +126,7 @@
     // The param must change to newParam
     // Check like param on stack
     T param;
-    std::vector<C2Param* const> stackParams{&param};
+    std::vector<C2Param*> stackParams{&param};
     ASSERT_EQ(C2_OK, mIntf->query_vb(stackParams, {}, C2_DONT_BLOCK, nullptr));
     EXPECT_EQ(*newParam, param);
 
@@ -138,21 +138,21 @@
 }
 
 template <typename T>
-void C2VDACompIntfTest::testInvalidWritableParam(const T* const invalidParam) {
+void C2VDACompIntfTest::testInvalidWritableParam(T* invalidParam) {
     // Get the current parameter info
     T preParam;
-    std::vector<C2Param* const> stackParams{&preParam};
+    std::vector<C2Param*> stackParams{&preParam};
     ASSERT_EQ(C2_OK, mIntf->query_vb(stackParams, {}, C2_DONT_BLOCK, nullptr));
 
     // Config invalid value. The failure is expected
-    std::vector<C2Param* const> params{(C2Param* const)invalidParam};
+    std::vector<C2Param*> params{invalidParam};
     std::vector<std::unique_ptr<C2SettingResult>> failures;
     ASSERT_EQ(C2_BAD_VALUE, mIntf->config_vb(params, C2_DONT_BLOCK, &failures));
     EXPECT_EQ(1u, failures.size());
 
     //The param must not change after config failed
     T param;
-    std::vector<C2Param* const> stackParams2{&param};
+    std::vector<C2Param*> stackParams2{&param};
     ASSERT_EQ(C2_OK, mIntf->query_vb(stackParams2, {}, C2_DONT_BLOCK, nullptr));
     EXPECT_EQ(preParam, param);
 
@@ -366,7 +366,7 @@
 
 TEST_F(C2VDACompIntfTest, TestUnsupportedParam) {
     C2ComponentTemporalInfo unsupportedParam;
-    std::vector<C2Param* const> stackParams{&unsupportedParam};
+    std::vector<C2Param*> stackParams{&unsupportedParam};
     ASSERT_EQ(C2_BAD_INDEX, mIntf->query_vb(stackParams, {}, C2_DONT_BLOCK, nullptr));
     EXPECT_EQ(0u, unsupportedParam.size());  // invalidated
 }