#include "components/cdm/renderer/external_clear_key_key_system_info.h"
#include <algorithm>
#include "base/containers/contains.h"
#include "base/notreached.h"
#include "media/base/eme_constants.h"
#include "media/base/key_system_names.h"
#include "media/cdm/clear_key_cdm_common.h"
namespace cdm {
ExternalClearKeyKeySystemInfo::ExternalClearKeyKeySystemInfo()
: … { … }
ExternalClearKeyKeySystemInfo::ExternalClearKeyKeySystemInfo(
const std::string& key_system,
std::vector<std::string> excluded_key_systems,
media::SupportedCodecs codecs,
media::EmeConfig::Rule eme_config_rule,
media::EmeFeatureSupport persistent_state_support,
media::EmeFeatureSupport distinctive_identifier_support)
: … { … }
ExternalClearKeyKeySystemInfo::~ExternalClearKeyKeySystemInfo() = default;
std::string ExternalClearKeyKeySystemInfo::GetBaseKeySystemName() const { … }
bool ExternalClearKeyKeySystemInfo::IsSupportedKeySystem(
const std::string& key_system) const { … }
bool ExternalClearKeyKeySystemInfo::IsSupportedInitDataType(
media::EmeInitDataType init_data_type) const { … }
std::optional<media::EmeConfig>
ExternalClearKeyKeySystemInfo::GetEncryptionSchemeConfigRule(
media::EncryptionScheme encryption_scheme) const { … }
media::SupportedCodecs ExternalClearKeyKeySystemInfo::GetSupportedCodecs()
const { … }
media::SupportedCodecs
ExternalClearKeyKeySystemInfo::GetSupportedHwSecureCodecs() const { … }
std::optional<media::EmeConfig>
ExternalClearKeyKeySystemInfo::GetRobustnessConfigRule(
const std::string& key_system,
media::EmeMediaType media_type,
const std::string& requested_robustness,
const bool* ) const { … }
std::optional<media::EmeConfig>
ExternalClearKeyKeySystemInfo::GetPersistentLicenseSessionSupport() const { … }
media::EmeFeatureSupport
ExternalClearKeyKeySystemInfo::GetPersistentStateSupport() const { … }
media::EmeFeatureSupport
ExternalClearKeyKeySystemInfo::GetDistinctiveIdentifierSupport() const { … }
}