Shaka Packager SDK
Loading...
Searching...
No Matches
content_protection_element.h
1// Copyright 2014 Google LLC. All rights reserved.
2//
3// Use of this source code is governed by a BSD-style
4// license that can be found in the LICENSE file or at
5// https://developers.google.com/open-source/licenses/bsd
6//
7// ContentProtectionElement is shared a structure that can be passed to
8// MPD generator classes to add ContentProtection element in the resulting MPD
9// file.
10// http://goo.gl/UrsSlF
11
12#ifndef MPD_BASE_CONTENT_PROTECTION_ELEMENT_H_
13#define MPD_BASE_CONTENT_PROTECTION_ELEMENT_H_
14
15#include <map>
16#include <string>
17#include <vector>
18
19namespace shaka {
20
21// This is any (XML) element.
22struct Element {
23 Element();
24 ~Element();
25 // Name of this element.
26 std::string name;
27 // attributes for this element.
28 std::map<std::string, std::string> attributes;
29 // Content of this element.
30 std::string content;
31 std::vector<Element> subelements;
32};
33
39
40 std::string value; // Will be set for 'value' attribute.
41 std::string scheme_id_uri; // Will be set for 'schemeIdUri' attribute.
42
43 // Other attributes for this element.
44 std::map<std::string, std::string> additional_attributes;
45
46 // The subelements that will be in this element.
47 std::vector<Element> subelements;
48};
49
50} // namespace shaka
51
52#endif // MPD_BASE_CONTENT_PROTECTION_ELEMENT_H_
All the methods that are virtual are virtual for mocking.