Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chromecast / media / cma / base / cast_decrypt_config_impl.h
blobb78494bb4ccd30e7933be19191dd0d5b622fb439
1 // Copyright 2015 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.
5 #ifndef CHROMECAST_MEDIA_CMA_BASE_CAST_DECRYPT_CONFIG_IMPL_H_
6 #define CHROMECAST_MEDIA_CMA_BASE_CAST_DECRYPT_CONFIG_IMPL_H_
8 #include "chromecast/public/media/cast_decrypt_config.h"
10 namespace media {
11 class DecryptConfig;
14 namespace chromecast {
15 namespace media {
17 // Contains all information that a decryptor needs to decrypt a media sample.
18 class CastDecryptConfigImpl : public CastDecryptConfig {
19 public:
20 CastDecryptConfigImpl(const ::media::DecryptConfig& config);
21 CastDecryptConfigImpl(const std::string& key_id,
22 const std::string& iv,
23 const std::vector<SubsampleEntry>& subsamples);
24 ~CastDecryptConfigImpl() override;
26 const std::string& key_id() const override;
27 const std::string& iv() const override;
28 const std::vector<SubsampleEntry>& subsamples() const override;
30 private:
31 std::string key_id_;
32 std::string iv_;
33 std::vector<SubsampleEntry> subsamples_;
36 } // namespace media
37 } // namespace chromecast
39 #endif // CHROMECAST_MEDIA_CMA_BASE_CAST_DECRYPT_CONFIG_IMPL_H_