Move Codec2-related code from hardware/google/av
Test: None
Bug: 112362730
Change-Id: Ie2f8ff431d65c40333f267ab9877d47089adeea4
diff --git a/media/codec2/hidl/services/C2SoftwareCodecServiceRegistrant.cpp b/media/codec2/hidl/services/C2SoftwareCodecServiceRegistrant.cpp
new file mode 100644
index 0000000..04efa44
--- /dev/null
+++ b/media/codec2/hidl/services/C2SoftwareCodecServiceRegistrant.cpp
@@ -0,0 +1,41 @@
+/*
+ * Copyright 2018 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.
+ */
+
+//#define LOG_NDEBUG 0
+#define LOG_TAG "C2SoftwareCodecServiceRegistrant"
+
+#include <C2PlatformSupport.h>
+#include <codec2/hidl/1.0/ComponentStore.h>
+#include <media/CodecServiceRegistrant.h>
+#include <log/log.h>
+
+extern "C" void RegisterCodecServices() {
+ using namespace ::hardware::google::media::c2::V1_0;
+ android::sp<IComponentStore> store =
+ new utils::ComponentStore(
+ android::GetCodec2PlatformComponentStore());
+ if (store == nullptr) {
+ ALOGE("Cannot create Codec2's IComponentStore software service.");
+ } else {
+ if (store->registerAsService("software") != android::OK) {
+ ALOGE("Cannot register Codec2's "
+ "IComponentStore software service.");
+ } else {
+ ALOGI("Codec2's IComponentStore software service created.");
+ }
+ }
+}
+