OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_COMMON_NP_CHANNEL_BASE_H_ | 5 #ifndef CONTENT_COMMON_NP_CHANNEL_BASE_H_ |
6 #define CONTENT_COMMON_NP_CHANNEL_BASE_H_ | 6 #define CONTENT_COMMON_NP_CHANNEL_BASE_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "base/hash_tables.h" | 12 #include "base/hash_tables.h" |
13 #include "base/memory/ref_counted.h" | 13 #include "base/memory/ref_counted.h" |
14 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" |
| 15 #include "base/process.h" |
15 #include "content/common/message_router.h" | 16 #include "content/common/message_router.h" |
16 #include "content/common/npobject_base.h" | 17 #include "content/common/npobject_base.h" |
17 #include "ipc/ipc_channel_handle.h" | 18 #include "ipc/ipc_channel_handle.h" |
18 #include "ipc/ipc_sync_channel.h" | 19 #include "ipc/ipc_sync_channel.h" |
19 #include "ui/gfx/native_widget_types.h" | 20 #include "ui/gfx/native_widget_types.h" |
20 | 21 |
21 namespace base { | 22 namespace base { |
22 class MessageLoopProxy; | 23 class MessageLoopProxy; |
23 } | 24 } |
24 | 25 |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 void AddMappingForNPObjectStub(int route_id, NPObject* object); | 69 void AddMappingForNPObjectStub(int route_id, NPObject* object); |
69 void RemoveMappingForNPObjectStub(int route_id, NPObject* object); | 70 void RemoveMappingForNPObjectStub(int route_id, NPObject* object); |
70 | 71 |
71 NPObject* GetExistingNPObjectProxy(int route_id); | 72 NPObject* GetExistingNPObjectProxy(int route_id); |
72 int GetExistingRouteForNPObjectStub(NPObject* npobject); | 73 int GetExistingRouteForNPObjectStub(NPObject* npobject); |
73 | 74 |
74 | 75 |
75 // IPC::Message::Sender implementation: | 76 // IPC::Message::Sender implementation: |
76 virtual bool Send(IPC::Message* msg) OVERRIDE; | 77 virtual bool Send(IPC::Message* msg) OVERRIDE; |
77 | 78 |
78 int peer_pid() { return peer_pid_; } | 79 base::ProcessId peer_pid() { return channel_->peer_pid(); } |
79 IPC::ChannelHandle channel_handle() const { return channel_handle_; } | 80 IPC::ChannelHandle channel_handle() const { return channel_handle_; } |
80 | 81 |
81 // Returns the number of open NPObject channels in this process. | 82 // Returns the number of open NPObject channels in this process. |
82 static int Count(); | 83 static int Count(); |
83 | 84 |
84 // Returns a new route id. | 85 // Returns a new route id. |
85 virtual int GenerateRouteID() = 0; | 86 virtual int GenerateRouteID() = 0; |
86 | 87 |
87 // Returns whether the channel is valid or not. A channel is invalid | 88 // Returns whether the channel is valid or not. A channel is invalid |
88 // if it is disconnected due to a channel error. | 89 // if it is disconnected due to a channel error. |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
193 // a result of a sync call from the renderer must unblock the renderer. We | 194 // a result of a sync call from the renderer must unblock the renderer. We |
194 // additionally have to do this for async messages from the renderer that | 195 // additionally have to do this for async messages from the renderer that |
195 // have the unblock flag set, since they could be followed by a sync message | 196 // have the unblock flag set, since they could be followed by a sync message |
196 // that won't get dispatched until the call to the renderer is complete. | 197 // that won't get dispatched until the call to the renderer is complete. |
197 bool send_unblocking_only_during_unblock_dispatch_; | 198 bool send_unblocking_only_during_unblock_dispatch_; |
198 | 199 |
199 DISALLOW_COPY_AND_ASSIGN(NPChannelBase); | 200 DISALLOW_COPY_AND_ASSIGN(NPChannelBase); |
200 }; | 201 }; |
201 | 202 |
202 #endif // CONTENT_COMMON_NP_CHANNEL_BASE_H_ | 203 #endif // CONTENT_COMMON_NP_CHANNEL_BASE_H_ |
OLD | NEW |