Shaka Player Embedded
manifest.cc
Go to the documentation of this file.
1 // Copyright 2020 Google LLC
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // https://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 //
15 // AUTO-GENERATED: DO NOT EDIT
16 
17 #include "shaka/manifest.h"
18 
19 #include "src/js/manifest.h"
20 
21 namespace shaka {
22 
24  public:
25  const std::string initDataType{};
27 
28  Impl() {}
31  keyId(std::move(internal.keyId)) {}
32 };
33 
35 InitDataOverride::InitDataOverride(js::InitDataOverride&& internal) : impl_(new Impl{std::move(internal)}) {}
39 
42 
43 const std::string& InitDataOverride::init_data_type() const {
44  return impl_->initDataType;
45 }
46 
48  return impl_->keyId;
49 }
50 
51 
54  ret.initDataType = impl_->initDataType;
55  ret.keyId = impl_->keyId;
56  return ret;
57 }
58 
59 
61  public:
62  const std::string keySystem{};
63  const std::string licenseServerUri{};
64  const bool distinctiveIdentifierRequired{};
65  const bool persistentStateRequired{};
66  const std::string audioRobustness{};
67  const std::string videoRobustness{};
68  const std::vector<shaka::InitDataOverride> initData{};
69  const std::vector<std::string> keyIds{};
70 
71  Impl() {}
72  Impl(js::DrmInfo&& internal)
73  : keySystem(std::move(internal.keySystem)),
74  licenseServerUri(std::move(internal.licenseServerUri)),
75  distinctiveIdentifierRequired(std::move(internal.distinctiveIdentifierRequired)),
76  persistentStateRequired(std::move(internal.persistentStateRequired)),
77  audioRobustness(std::move(internal.audioRobustness)),
78  videoRobustness(std::move(internal.videoRobustness)),
79  initData(std::make_move_iterator(internal.initData.begin()), std::make_move_iterator(internal.initData.end())),
80  keyIds(std::make_move_iterator(internal.keyIds.begin()), std::make_move_iterator(internal.keyIds.end())) {}
81 };
82 
83 DrmInfo::DrmInfo() : impl_(new Impl) {}
84 DrmInfo::DrmInfo(js::DrmInfo&& internal) : impl_(new Impl{std::move(internal)}) {}
85 DrmInfo::DrmInfo(const DrmInfo&) = default;
86 DrmInfo::DrmInfo(DrmInfo&&) = default;
88 
89 DrmInfo& DrmInfo::operator=(const DrmInfo&) = default;
90 DrmInfo& DrmInfo::operator=(DrmInfo&&) = default;
91 
92 const std::string& DrmInfo::key_system() const {
93  return impl_->keySystem;
94 }
95 
96 const std::string& DrmInfo::license_server_uri() const {
97  return impl_->licenseServerUri;
98 }
99 
101  return impl_->distinctiveIdentifierRequired;
102 }
103 
105  return impl_->persistentStateRequired;
106 }
107 
108 const std::string& DrmInfo::audio_robustness() const {
109  return impl_->audioRobustness;
110 }
111 
112 const std::string& DrmInfo::video_robustness() const {
113  return impl_->videoRobustness;
114 }
115 
116 const std::vector<shaka::InitDataOverride>& DrmInfo::init_data() const {
117  return impl_->initData;
118 }
119 
120 const std::vector<std::string>& DrmInfo::key_ids() const {
121  return impl_->keyIds;
122 }
123 
124 
126  js::DrmInfo ret;
127  ret.keySystem = impl_->keySystem;
128  ret.licenseServerUri = impl_->licenseServerUri;
129  ret.distinctiveIdentifierRequired = impl_->distinctiveIdentifierRequired;
130  ret.persistentStateRequired = impl_->persistentStateRequired;
131  ret.audioRobustness = impl_->audioRobustness;
132  ret.videoRobustness = impl_->videoRobustness;
133  for (const auto& item : impl_->initData) {
134  ret.initData.emplace_back(item.GetInternal());
135  }
136  ret.keyIds = impl_->keyIds;
137  return ret;
138 }
139 
140 
141 
142 } // namespace shaka
bool distinctive_identifier_required() const
Definition: manifest.cc:100
const std::vector< std::string > & key_ids() const
Definition: manifest.cc:120
const std::string & license_server_uri() const
Definition: manifest.cc:96
const std::string & init_data_type() const
Definition: manifest.cc:43
const std::string & key_system() const
Definition: manifest.cc:92
DrmInfo & operator=(const DrmInfo &)
const std::string & audio_robustness() const
Definition: manifest.cc:108
Impl(js::DrmInfo &&internal)
Definition: manifest.cc:72
js::DrmInfo GetInternal() const
Definition: manifest.cc:125
Impl(js::InitDataOverride &&internal)
Definition: manifest.cc:29
const shaka::optional< std::string > keyId
Definition: manifest.cc:26
const std::string initDataType
Definition: manifest.cc:25
js::InitDataOverride GetInternal() const
Definition: manifest.cc:52
shaka::optional< std::string > key_id() const
Definition: manifest.cc:47
InitDataOverride & operator=(const InitDataOverride &)
bool persistent_state_required() const
Definition: manifest.cc:104
const std::vector< shaka::InitDataOverride > & init_data() const
Definition: manifest.cc:116
const std::string & video_robustness() const
Definition: manifest.cc:112