Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(342)

Side by Side Diff: content/renderer/media/crypto/proxy_decryptor.h

Issue 63253002: Rename WebKit namespace to blink (part 3) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_RENDERER_MEDIA_CRYPTO_PROXY_DECRYPTOR_H_ 5 #ifndef CONTENT_RENDERER_MEDIA_CRYPTO_PROXY_DECRYPTOR_H_
6 #define CONTENT_RENDERER_MEDIA_CRYPTO_PROXY_DECRYPTOR_H_ 6 #define CONTENT_RENDERER_MEDIA_CRYPTO_PROXY_DECRYPTOR_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/basictypes.h" 11 #include "base/basictypes.h"
12 #include "base/memory/scoped_ptr.h" 12 #include "base/memory/scoped_ptr.h"
13 #include "base/memory/weak_ptr.h" 13 #include "base/memory/weak_ptr.h"
14 #include "base/synchronization/lock.h" 14 #include "base/synchronization/lock.h"
15 #include "media/base/decryptor.h" 15 #include "media/base/decryptor.h"
16 #include "media/base/media_keys.h" 16 #include "media/base/media_keys.h"
17 17
18 class GURL; 18 class GURL;
19 19
20 namespace WebKit { 20 namespace blink {
21 #if defined(ENABLE_PEPPER_CDMS) 21 #if defined(ENABLE_PEPPER_CDMS)
22 class WebFrame; 22 class WebFrame;
23 class WebMediaPlayerClient; 23 class WebMediaPlayerClient;
24 #endif // defined(ENABLE_PEPPER_CDMS) 24 #endif // defined(ENABLE_PEPPER_CDMS)
25 } 25 }
26 26
27 namespace content { 27 namespace content {
28 28
29 #if defined(OS_ANDROID) 29 #if defined(OS_ANDROID)
30 class RendererMediaPlayerManager; 30 class RendererMediaPlayerManager;
31 #endif // defined(OS_ANDROID) 31 #endif // defined(OS_ANDROID)
32 32
33 // ProxyDecryptor is for EME v0.1b only. It should not be used for the WD API. 33 // ProxyDecryptor is for EME v0.1b only. It should not be used for the WD API.
34 // A decryptor proxy that creates a real decryptor object on demand and 34 // A decryptor proxy that creates a real decryptor object on demand and
35 // forwards decryptor calls to it. 35 // forwards decryptor calls to it.
36 // TODO(xhwang): Currently we don't support run-time switching among decryptor 36 // TODO(xhwang): Currently we don't support run-time switching among decryptor
37 // objects. Fix this when needed. 37 // objects. Fix this when needed.
38 // TODO(xhwang): The ProxyDecryptor is not a Decryptor. Find a better name! 38 // TODO(xhwang): The ProxyDecryptor is not a Decryptor. Find a better name!
39 class ProxyDecryptor : public media::MediaKeys { 39 class ProxyDecryptor : public media::MediaKeys {
40 public: 40 public:
41 ProxyDecryptor( 41 ProxyDecryptor(
42 #if defined(ENABLE_PEPPER_CDMS) 42 #if defined(ENABLE_PEPPER_CDMS)
43 WebKit::WebMediaPlayerClient* web_media_player_client, 43 blink::WebMediaPlayerClient* web_media_player_client,
44 WebKit::WebFrame* web_frame, 44 blink::WebFrame* web_frame,
45 #elif defined(OS_ANDROID) 45 #elif defined(OS_ANDROID)
46 RendererMediaPlayerManager* manager, 46 RendererMediaPlayerManager* manager,
47 int media_keys_id, 47 int media_keys_id,
48 #endif // defined(ENABLE_PEPPER_CDMS) 48 #endif // defined(ENABLE_PEPPER_CDMS)
49 const media::KeyAddedCB& key_added_cb, 49 const media::KeyAddedCB& key_added_cb,
50 const media::KeyErrorCB& key_error_cb, 50 const media::KeyErrorCB& key_error_cb,
51 const media::KeyMessageCB& key_message_cb); 51 const media::KeyMessageCB& key_message_cb);
52 virtual ~ProxyDecryptor(); 52 virtual ~ProxyDecryptor();
53 53
54 // Only call this once. 54 // Only call this once.
(...skipping 29 matching lines...) Expand all
84 const std::vector<uint8>& message, 84 const std::vector<uint8>& message,
85 const std::string& default_url); 85 const std::string& default_url);
86 86
87 base::WeakPtrFactory<ProxyDecryptor> weak_ptr_factory_; 87 base::WeakPtrFactory<ProxyDecryptor> weak_ptr_factory_;
88 88
89 #if defined(ENABLE_PEPPER_CDMS) 89 #if defined(ENABLE_PEPPER_CDMS)
90 // Callback for cleaning up a Pepper-based CDM. 90 // Callback for cleaning up a Pepper-based CDM.
91 void DestroyHelperPlugin(); 91 void DestroyHelperPlugin();
92 92
93 // Needed to create the PpapiDecryptor. 93 // Needed to create the PpapiDecryptor.
94 WebKit::WebMediaPlayerClient* web_media_player_client_; 94 blink::WebMediaPlayerClient* web_media_player_client_;
95 WebKit::WebFrame* web_frame_; 95 blink::WebFrame* web_frame_;
96 #elif defined(OS_ANDROID) 96 #elif defined(OS_ANDROID)
97 RendererMediaPlayerManager* manager_; 97 RendererMediaPlayerManager* manager_;
98 int media_keys_id_; 98 int media_keys_id_;
99 #endif // defined(ENABLE_PEPPER_CDMS) 99 #endif // defined(ENABLE_PEPPER_CDMS)
100 100
101 // The real MediaKeys that manages key operations for the ProxyDecryptor. 101 // The real MediaKeys that manages key operations for the ProxyDecryptor.
102 // This pointer is protected by the |lock_|. 102 // This pointer is protected by the |lock_|.
103 scoped_ptr<media::MediaKeys> media_keys_; 103 scoped_ptr<media::MediaKeys> media_keys_;
104 104
105 // Callbacks for firing key events. 105 // Callbacks for firing key events.
106 media::KeyAddedCB key_added_cb_; 106 media::KeyAddedCB key_added_cb_;
107 media::KeyErrorCB key_error_cb_; 107 media::KeyErrorCB key_error_cb_;
108 media::KeyMessageCB key_message_cb_; 108 media::KeyMessageCB key_message_cb_;
109 109
110 // Protects the |decryptor_|. Note that |decryptor_| itself should be thread 110 // Protects the |decryptor_|. Note that |decryptor_| itself should be thread
111 // safe as per the Decryptor interface. 111 // safe as per the Decryptor interface.
112 base::Lock lock_; 112 base::Lock lock_;
113 113
114 media::DecryptorReadyCB decryptor_ready_cb_; 114 media::DecryptorReadyCB decryptor_ready_cb_;
115 115
116 DISALLOW_COPY_AND_ASSIGN(ProxyDecryptor); 116 DISALLOW_COPY_AND_ASSIGN(ProxyDecryptor);
117 }; 117 };
118 118
119 } // namespace content 119 } // namespace content
120 120
121 #endif // CONTENT_RENDERER_MEDIA_CRYPTO_PROXY_DECRYPTOR_H_ 121 #endif // CONTENT_RENDERER_MEDIA_CRYPTO_PROXY_DECRYPTOR_H_
OLDNEW
« no previous file with comments | « content/renderer/media/crypto/key_systems_unittest.cc ('k') | content/renderer/media/crypto/proxy_decryptor.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698