Files
android/libwvdrmengine/aidl_include/Utils.h
Edwin 9654d29be6 Widevine drm aidl: address API review
Interface update in change 16810770

Bug: 214410088
Test: atest VtsAidlHalDrmTargetTest
Change-Id: I19da51ef75952f5ff6c7c02e0393f574e69ee30b
2022-02-09 22:19:36 -08:00

56 lines
1.7 KiB
C++

//
// Copyright 2021 Google LLC. All Rights Reserved. This file and proprietary
// source code may only be used and distributed under the Widevine License
// Agreement.
//
#ifndef WV_UTILS_H_
#define WV_UTILS_H_
#include <aidl/android/hardware/drm/Status.h>
#include <android/binder_auto_utils.h>
#include <string>
#include <vector>
#include "log.h"
namespace wvdrm {
inline ::aidl::android::hardware::drm::LogPriority toAidlLogPriority(
wvutil::LogPriority p) {
switch (p) {
case wvutil::LogPriority::CDM_LOG_ERROR:
return ::aidl::android::hardware::drm::LogPriority::ERROR;
case wvutil::LogPriority::CDM_LOG_WARN:
return ::aidl::android::hardware::drm::LogPriority::WARN;
case wvutil::LogPriority::CDM_LOG_INFO:
return ::aidl::android::hardware::drm::LogPriority::INFO;
case wvutil::LogPriority::CDM_LOG_DEBUG:
return ::aidl::android::hardware::drm::LogPriority::DEBUG;
case wvutil::LogPriority::CDM_LOG_VERBOSE:
return ::aidl::android::hardware::drm::LogPriority::VERBOSE;
default:
return ::aidl::android::hardware::drm::LogPriority::UNKNOWN;
}
}
inline ::ndk::ScopedAStatus toNdkScopedAStatus(
::aidl::android::hardware::drm::Status status, const char* msg = nullptr) {
if (::aidl::android::hardware::drm::Status::OK == status)
return ::ndk::ScopedAStatus::ok();
else {
auto err = static_cast<int32_t>(status);
if (msg) {
return ::ndk::ScopedAStatus::fromServiceSpecificErrorWithMessage(err,
msg);
} else {
return ::ndk::ScopedAStatus::fromServiceSpecificError(err);
}
}
}
} // namespace wvdrm
#endif // WV_UTILS_H_