blob: dc6423c8768ee592389bc42be4794510d7c935f8 [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "media/remoting/remoting_cdm_context.h"
#include "media/remoting/remoting_cdm.h"
#include "media/remoting/remoting_source_impl.h"
namespace media {
namespace {
// Used as an identifier for RemotingCdmContext::From().
void* const kClassIdentifier = const_cast<void**>(&kClassIdentifier);
} // namespace
// TODO(xjz): Merge this with erickung's implementation.
RemotingCdmContext::RemotingCdmContext(RemotingCdm* remoting_cdm)
: remoting_cdm_(remoting_cdm) {}
RemotingCdmContext::~RemotingCdmContext() {}
RemotingCdmContext* RemotingCdmContext::From(CdmContext* cdm_context) {
if (cdm_context && cdm_context->GetClassIdentifier() == kClassIdentifier)
return static_cast<RemotingCdmContext*>(cdm_context);
return nullptr;
}
Decryptor* RemotingCdmContext::GetDecryptor() {
// TODO(xjz): Merge with erickung's implementation.
return nullptr;
}
int RemotingCdmContext::GetCdmId() const {
// TODO(xjz): Merge with erickung's implementation.
return CdmContext::kInvalidCdmId;
}
void* RemotingCdmContext::GetClassIdentifier() const {
return kClassIdentifier;
}
RemotingSourceImpl* RemotingCdmContext::GetRemotingSource() {
return remoting_cdm_->GetRemotingSource();
}
} // namespace media