1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef MEDIA_CDM_PPAPI_SUPPORTED_CDM_VERSIONS_H_
6#define MEDIA_CDM_PPAPI_SUPPORTED_CDM_VERSIONS_H_
7
8#include "media/cdm/ppapi/api/content_decryption_module.h"
9
10namespace media {
11
12bool IsSupportedCdmModuleVersion(int version) {
13  switch(version) {
14    // Latest.
15    case CDM_MODULE_VERSION:
16      return true;
17    default:
18      return false;
19  }
20}
21
22bool IsSupportedCdmInterfaceVersion(int version) {
23  COMPILE_ASSERT(cdm::ContentDecryptionModule::kVersion ==
24                     cdm::ContentDecryptionModule_6::kVersion,
25                 update_code_below);
26  switch(version) {
27    // Supported versions in decreasing order.
28    case cdm::ContentDecryptionModule_6::kVersion:
29    case cdm::ContentDecryptionModule_4::kVersion:
30      return true;
31    default:
32      return false;
33  }
34}
35
36bool IsSupportedCdmHostVersion(int version) {
37  COMPILE_ASSERT(cdm::ContentDecryptionModule::Host::kVersion ==
38                     cdm::ContentDecryptionModule_6::Host::kVersion,
39                 update_code_below);
40  switch(version) {
41    // Supported versions in decreasing order.
42    case cdm::Host_6::kVersion:
43    case cdm::Host_4::kVersion:
44      return true;
45    default:
46      return false;
47  }
48}
49
50}  // namespace media
51
52#endif  // MEDIA_CDM_PPAPI_SUPPORTED_CDM_VERSIONS_H_
53