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

Side by Side Diff: chrome/plugin/plugin_thread.h

Issue 155876: Revert r21117 as it caused reliability failures.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 11 years, 5 months 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
« no previous file with comments | « chrome/plugin/plugin_main.cc ('k') | chrome/plugin/plugin_thread.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 CHROME_PLUGIN_PLUGIN_THREAD_H_ 5 #ifndef CHROME_PLUGIN_PLUGIN_THREAD_H_
6 #define CHROME_PLUGIN_PLUGIN_THREAD_H_ 6 #define CHROME_PLUGIN_PLUGIN_THREAD_H_
7 7
8 #include "base/file_path.h" 8 #include "base/file_path.h"
9 #include "base/native_library.h" 9 #include "base/native_library.h"
10 #include "build/build_config.h" 10 #include "build/build_config.h"
11 #include "chrome/common/child_thread.h" 11 #include "chrome/common/child_thread.h"
12 #include "chrome/plugin/plugin_channel.h" 12 #include "chrome/plugin/plugin_channel.h"
13 #include "webkit/glue/plugins/plugin_lib.h" 13 #include "webkit/glue/plugins/plugin_lib.h"
14 14
15 #if defined(OS_POSIX) 15 #if defined(OS_POSIX)
16 #include "base/file_descriptor_posix.h" 16 #include "base/file_descriptor_posix.h"
17 #endif 17 #endif
18 18
19 class NotificationService;
20
19 // The PluginThread class represents a background thread where plugin instances 21 // The PluginThread class represents a background thread where plugin instances
20 // live. Communication occurs between WebPluginDelegateProxy in the renderer 22 // live. Communication occurs between WebPluginDelegateProxy in the renderer
21 // process and WebPluginDelegateStub in this thread through IPC messages. 23 // process and WebPluginDelegateStub in this thread through IPC messages.
22 class PluginThread : public ChildThread { 24 class PluginThread : public ChildThread {
23 public: 25 public:
24 PluginThread(); 26 PluginThread();
25 ~PluginThread(); 27 ~PluginThread();
26 28
27 // Returns the one plugin thread. 29 // Returns the one plugin thread.
28 static PluginThread* current(); 30 static PluginThread* current();
29 31
30 private: 32 private:
31 virtual void OnControlMessageReceived(const IPC::Message& msg); 33 virtual void OnControlMessageReceived(const IPC::Message& msg);
32 34
35 // Thread implementation:
36 virtual void Init();
37 virtual void CleanUp();
38
33 // Callback for when a channel has been created. 39 // Callback for when a channel has been created.
34 void OnCreateChannel( 40 void OnCreateChannel(
35 int process_id, 41 int process_id,
36 bool off_the_record); 42 bool off_the_record);
37 void OnPluginMessage(const std::vector<uint8> &data); 43 void OnPluginMessage(const std::vector<uint8> &data);
38 44
45 scoped_ptr<NotificationService> notification_service_;
46
39 // The plugin module which is preloaded in Init 47 // The plugin module which is preloaded in Init
40 base::NativeLibrary preloaded_plugin_module_; 48 base::NativeLibrary preloaded_plugin_module_;
41 49
42 // Points to the plugin file that this process hosts. 50 // Points to the plugin file that this process hosts.
43 FilePath plugin_path_; 51 FilePath plugin_path_;
44 52
45 DISALLOW_EVIL_CONSTRUCTORS(PluginThread); 53 DISALLOW_EVIL_CONSTRUCTORS(PluginThread);
46 }; 54 };
47 55
48 #endif // CHROME_PLUGIN_PLUGIN_THREAD_H_ 56 #endif // CHROME_PLUGIN_PLUGIN_THREAD_H_
OLDNEW
« no previous file with comments | « chrome/plugin/plugin_main.cc ('k') | chrome/plugin/plugin_thread.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698