diff options
author | Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> | 2024-02-01 19:12:23 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2024-02-01 19:12:23 +0000 |
commit | f8b07cbcb8563083cb6b5db3dd6c5ef54672070c (patch) | |
tree | b8889c87d7c964661d5095c8675d36e8f65d1b65 | |
parent | e5c49e54361d839282dfe9eb1b3d34cfe2bec487 (diff) | |
parent | 6afeed1ec2f5ac98654271fc93c6c1bf73d930c9 (diff) | |
download | av-f8b07cbcb8563083cb6b5db3dd6c5ef54672070c.tar.gz |
Merge "libmedia_eco_service: Start using libbinder_ndk" into main am: 6afeed1ec2
Original change: https://android-review.googlesource.com/c/platform/hardware/google/av/+/2939239
Change-Id: Idecdbe03aaa467638bc51a9a704d117e556542e2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | media/eco/Android.bp | 4 | ||||
-rw-r--r-- | media/eco/ECOService.cpp | 3 | ||||
-rw-r--r-- | media/eco/ECOServiceStatsProvider.cpp | 3 | ||||
-rw-r--r-- | media/eco/ECOSession.cpp | 6 | ||||
-rw-r--r-- | media/eco/include/eco/ECOService.h | 14 | ||||
-rw-r--r-- | media/eco/include/eco/ECOServiceInfoListener.h | 5 | ||||
-rw-r--r-- | media/eco/include/eco/ECOServiceStatsProvider.h | 5 | ||||
-rw-r--r-- | media/eco/include/eco/ECOSession.h | 5 | ||||
-rw-r--r-- | media/eco/tests/Android.bp | 35 | ||||
-rw-r--r-- | media/eco/tests/EcoServiceTest.cpp | 1 | ||||
-rw-r--r-- | media/eco/tests/FakeECOServiceInfoListener.cpp | 2 | ||||
-rw-r--r-- | media/eco/tests/FakeECOServiceInfoListener.h | 1 | ||||
-rw-r--r-- | media/eco/tests/FakeECOServiceStatsProvider.cpp | 2 | ||||
-rw-r--r-- | media/eco/tests/FakeECOServiceStatsProvider.h | 1 |
14 files changed, 34 insertions, 53 deletions
diff --git a/media/eco/Android.bp b/media/eco/Android.bp index 10a1d6c..d4cb82f 100644 --- a/media/eco/Android.bp +++ b/media/eco/Android.bp @@ -20,6 +20,7 @@ aidl_interface { enabled: true, additional_shared_libraries: [ "libmedia_ecoservice_ecodata", + "libbinder_ndk", ], }, ndk: { @@ -46,6 +47,7 @@ cc_library { shared_libs: [ "libbase", "libbinder", + "libbinder_ndk", "liblog", "libutils", ], @@ -89,6 +91,7 @@ cc_library_shared { ], shared_libs: [ "libbinder", + "libbinder_ndk", "libcutils", "liblog", "libutils", @@ -96,6 +99,7 @@ cc_library_shared { ], export_shared_lib_headers: [ "libbinder", + "libbinder_ndk", ], sanitize: { diff --git a/media/eco/ECOService.cpp b/media/eco/ECOService.cpp index e95dee5..434485f 100644 --- a/media/eco/ECOService.cpp +++ b/media/eco/ECOService.cpp @@ -19,7 +19,6 @@ #include "eco/ECOService.h" -#include <binder/BinderService.h> #include <cutils/atomic.h> #include <inttypes.h> #include <pthread.h> @@ -158,4 +157,4 @@ status_t ECOService::dump(int fd, const Vector<String16>& args) { } // namespace eco } // namespace media -} // namespace android
\ No newline at end of file +} // namespace android diff --git a/media/eco/ECOServiceStatsProvider.cpp b/media/eco/ECOServiceStatsProvider.cpp index 11947fd..90f1a23 100644 --- a/media/eco/ECOServiceStatsProvider.cpp +++ b/media/eco/ECOServiceStatsProvider.cpp @@ -18,6 +18,7 @@ #define LOG_TAG "ECOServiceStatsProvider" #include <eco/ECOServiceStatsProvider.h> +#include <binder/IServiceManager.h> #include <utils/Timers.h> namespace android { @@ -34,7 +35,7 @@ ECOServiceStatsProvider::ECOServiceStatsProvider( mECOSession(session), mProviderName(name) { ALOGD("%s, construct with w: %d, h: %d, isCameraRecording: %d, ProviderName:%s", - __func__, width, height, isCameraRecording, name); + __func__, mWidth, mHeight, isCameraRecording, name); } Status ECOServiceStatsProvider::getType(int32_t* _aidl_return) { diff --git a/media/eco/ECOSession.cpp b/media/eco/ECOSession.cpp index f2791dc..db85571 100644 --- a/media/eco/ECOSession.cpp +++ b/media/eco/ECOSession.cpp @@ -19,7 +19,7 @@ //#define DEBUG_ECO_SESSION #include "eco/ECOSession.h" -#include <binder/BinderService.h> +#include <android/binder_ibinder.h> #include <cutils/atomic.h> #include <inttypes.h> #include <pthread.h> @@ -383,7 +383,7 @@ Status ECOSession::addStatsProvider( } ECOLOGV("Try to add stats provider name: %s uid: %d pid %d", ::android::String8(name).c_str(), - IPCThreadState::self()->getCallingUid(), IPCThreadState::self()->getCallingPid()); + AIBinder_getCallingUid(), AIBinder_getCallingPid()); if (provider == nullptr) { ECOLOGE("%s: provider must not be null", __FUNCTION__); @@ -484,7 +484,7 @@ Status ECOSession::addInfoListener( } ECOLOGD("Info listener name: %s uid: %d pid %d", ::android::String8(name).c_str(), - IPCThreadState::self()->getCallingUid(), IPCThreadState::self()->getCallingPid()); + AIBinder_getCallingUid(), AIBinder_getCallingPid()); mListener = listener; mListenerName = name; diff --git a/media/eco/include/eco/ECOService.h b/media/eco/include/eco/ECOService.h index cc6dc64..d0d732a 100644 --- a/media/eco/include/eco/ECOService.h +++ b/media/eco/include/eco/ECOService.h @@ -18,7 +18,7 @@ #define ANDROID_MEDIA_ECO_SERVICE_H_ #include <android/media/eco/BnECOService.h> -#include <binder/BinderService.h> +#include <binder/IServiceManager.h> #include <utils/Mutex.h> #include <list> @@ -50,10 +50,8 @@ using android::media::eco::ECOSession; * ECOServiceStatsProvider and ECOServiceInfoListener should remove themselves from ECOSession. * Then ECOService will safely destroy the ECOSession. */ -class ECOService : public BinderService<ECOService>, - public BnECOService, +class ECOService : public BnECOService, public virtual IBinder::DeathRecipient { - friend class BinderService<ECOService>; public: ECOService(); @@ -67,6 +65,14 @@ public: virtual Status getSessions(::std::vector<sp<IBinder>>* _aidl_return); + static status_t instantiate() { + bool allowIsolated = false; + int dumpFlags = IServiceManager::DUMP_FLAG_PRIORITY_DEFAULT; + sp<IServiceManager> sm(defaultServiceManager()); + return sm->addService(String16(getServiceName()), new ECOService(), allowIsolated, + dumpFlags); + } + // Implementation of BinderService<T> static char const* getServiceName() { return "media.ecoservice"; } diff --git a/media/eco/include/eco/ECOServiceInfoListener.h b/media/eco/include/eco/ECOServiceInfoListener.h index 8a08a69..86d379f 100644 --- a/media/eco/include/eco/ECOServiceInfoListener.h +++ b/media/eco/include/eco/ECOServiceInfoListener.h @@ -19,7 +19,6 @@ #include <android/media/eco/BnECOServiceInfoListener.h> #include <android/media/eco/IECOSession.h> -#include <binder/BinderService.h> #include <condition_variable> #include <memory> @@ -37,10 +36,8 @@ using ::android::binder::Status; /** * ECOServiceInfoListener interface class. */ -class ECOServiceInfoListener : public BinderService<IECOServiceInfoListener>, - public BnECOServiceInfoListener, +class ECOServiceInfoListener : public BnECOServiceInfoListener, public virtual IBinder::DeathRecipient { - friend class BinderService<IECOServiceInfoListener>; public: // Create a ECOServiceInfoListener with specifed width, height and isCameraRecording. diff --git a/media/eco/include/eco/ECOServiceStatsProvider.h b/media/eco/include/eco/ECOServiceStatsProvider.h index ed0ca7d..c81f0b8 100644 --- a/media/eco/include/eco/ECOServiceStatsProvider.h +++ b/media/eco/include/eco/ECOServiceStatsProvider.h @@ -20,7 +20,6 @@ #include <android/media/eco/BnECOServiceStatsProvider.h> #include <android/media/eco/IECOSession.h> #include <android/media/eco/IECOService.h> -#include <binder/BinderService.h> #include <condition_variable> #include <memory> @@ -39,10 +38,8 @@ using ::android::binder::Status; /** * ECOServiceStatsProvider interface class. */ -class ECOServiceStatsProvider : public BinderService<IECOServiceStatsProvider>, - public BnECOServiceStatsProvider, +class ECOServiceStatsProvider : public BnECOServiceStatsProvider, public virtual IBinder::DeathRecipient { - friend class BinderService<IECOServiceStatsProvider>; public: virtual ~ECOServiceStatsProvider() {} diff --git a/media/eco/include/eco/ECOSession.h b/media/eco/include/eco/ECOSession.h index 90f9d94..9fb0bdc 100644 --- a/media/eco/include/eco/ECOSession.h +++ b/media/eco/include/eco/ECOSession.h @@ -19,7 +19,6 @@ #include <android/media/eco/BnECOSession.h> #include <android/media/eco/IECOServiceStatsProvider.h> -#include <binder/BinderService.h> #include <condition_variable> #include <deque> @@ -47,10 +46,8 @@ using ::android::binder::Status; * it only supports resolution of up to 720P and only for camera recording use case. Also, it only * supports encoder as the provider and camera as listener. */ -class ECOSession : public BinderService<ECOSession>, - public BnECOSession, +class ECOSession : public BnECOSession, public virtual IBinder::DeathRecipient { - friend class BinderService<ECOSession>; public: virtual ~ECOSession(); diff --git a/media/eco/tests/Android.bp b/media/eco/tests/Android.bp index 70390cc..abd8037 100644 --- a/media/eco/tests/Android.bp +++ b/media/eco/tests/Android.bp @@ -3,20 +3,15 @@ package { default_applicable_licenses: ["Android-Apache-2.0"], } -cc_defaults{ - name : "libmedia_ecoservice_tests_defaults", - cflags : [ +cc_defaults { + name: "libmedia_ecoservice_tests_defaults", + cflags: [ "-Wall", "-Werror", ], -} - -cc_test { - name: "EcoDataTest", - defaults: ["libmedia_ecoservice_tests_defaults"], - srcs: ["EcoDataTest.cpp"], shared_libs: [ "libbinder", + "libbinder_ndk", "libcutils", "libutils", "liblog", @@ -25,20 +20,18 @@ cc_test { } cc_test { + name: "EcoDataTest", + defaults: ["libmedia_ecoservice_tests_defaults"], + srcs: ["EcoDataTest.cpp"], +} + +cc_test { name: "EcoSessionTest", defaults: ["libmedia_ecoservice_tests_defaults"], srcs: [ "EcoSessionTest.cpp", "FakeECOServiceStatsProvider.cpp", "FakeECOServiceInfoListener.cpp", - ], - - shared_libs: [ - "libbinder", - "libcutils", - "libutils", - "liblog", - "libmedia_ecoservice", ], } @@ -50,13 +43,5 @@ cc_test { "EcoServiceTest.cpp", "FakeECOServiceStatsProvider.cpp", "FakeECOServiceInfoListener.cpp", - ], - - shared_libs: [ - "libbinder", - "libcutils", - "libutils", - "liblog", - "libmedia_ecoservice", ], } diff --git a/media/eco/tests/EcoServiceTest.cpp b/media/eco/tests/EcoServiceTest.cpp index 7b5f227..df54c53 100644 --- a/media/eco/tests/EcoServiceTest.cpp +++ b/media/eco/tests/EcoServiceTest.cpp @@ -22,6 +22,7 @@ #include <android-base/unique_fd.h> #include <binder/Parcel.h> #include <binder/Parcelable.h> +#include <binder/IServiceManager.h> #include <cutils/ashmem.h> #include <gtest/gtest.h> #include <math.h> diff --git a/media/eco/tests/FakeECOServiceInfoListener.cpp b/media/eco/tests/FakeECOServiceInfoListener.cpp index 2a4a285..10a6851 100644 --- a/media/eco/tests/FakeECOServiceInfoListener.cpp +++ b/media/eco/tests/FakeECOServiceInfoListener.cpp @@ -20,8 +20,6 @@ #include "FakeECOServiceInfoListener.h" #include <android-base/unique_fd.h> -#include <binder/IPCThreadState.h> -#include <binder/IServiceManager.h> #include <binder/Parcel.h> #include <binder/Parcelable.h> #include <cutils/ashmem.h> diff --git a/media/eco/tests/FakeECOServiceInfoListener.h b/media/eco/tests/FakeECOServiceInfoListener.h index 9974b63..7c23275 100644 --- a/media/eco/tests/FakeECOServiceInfoListener.h +++ b/media/eco/tests/FakeECOServiceInfoListener.h @@ -19,7 +19,6 @@ #include <android-base/unique_fd.h> #include <android/media/eco/BnECOServiceInfoListener.h> #include <android/media/eco/IECOSession.h> -#include <binder/BinderService.h> #include <binder/Parcel.h> #include <binder/Parcelable.h> #include <cutils/ashmem.h> diff --git a/media/eco/tests/FakeECOServiceStatsProvider.cpp b/media/eco/tests/FakeECOServiceStatsProvider.cpp index 883a830..4bf0ca4 100644 --- a/media/eco/tests/FakeECOServiceStatsProvider.cpp +++ b/media/eco/tests/FakeECOServiceStatsProvider.cpp @@ -20,8 +20,6 @@ #include "FakeECOServiceStatsProvider.h" #include <android-base/unique_fd.h> -#include <binder/IPCThreadState.h> -#include <binder/IServiceManager.h> #include <binder/Parcel.h> #include <binder/Parcelable.h> #include <cutils/ashmem.h> diff --git a/media/eco/tests/FakeECOServiceStatsProvider.h b/media/eco/tests/FakeECOServiceStatsProvider.h index 0f60d02..bf14a53 100644 --- a/media/eco/tests/FakeECOServiceStatsProvider.h +++ b/media/eco/tests/FakeECOServiceStatsProvider.h @@ -18,7 +18,6 @@ #include <android-base/unique_fd.h> #include <android/media/eco/BnECOServiceStatsProvider.h> -#include <binder/BinderService.h> #include <binder/Parcel.h> #include <binder/Parcelable.h> #include <cutils/ashmem.h> |