OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 WEBKIT_PLUGINS_PPAPI_RESOURCE_TRACKER_H_ | 5 #ifndef WEBKIT_PLUGINS_PPAPI_RESOURCE_TRACKER_H_ |
6 #define WEBKIT_PLUGINS_PPAPI_RESOURCE_TRACKER_H_ | 6 #define WEBKIT_PLUGINS_PPAPI_RESOURCE_TRACKER_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <set> | 9 #include <set> |
10 #include <utility> | 10 #include <utility> |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 // Forces the plugin refcount of the given resource to 0. This is used when | 56 // Forces the plugin refcount of the given resource to 0. This is used when |
57 // the instance is destroyed and we want to free all resources. | 57 // the instance is destroyed and we want to free all resources. |
58 // | 58 // |
59 // Note that this may not necessarily delete the resource object since the | 59 // Note that this may not necessarily delete the resource object since the |
60 // regular refcount is maintained separately from the plugin refcount and | 60 // regular refcount is maintained separately from the plugin refcount and |
61 // random components in the Pepper implementation could still have | 61 // random components in the Pepper implementation could still have |
62 // references to it. | 62 // references to it. |
63 void ForceDeletePluginResourceRefs(PP_Resource res); | 63 void ForceDeletePluginResourceRefs(PP_Resource res); |
64 | 64 |
65 // Returns the number of resources associated with this module. | 65 // Returns the number of resources associated with this module. |
66 // | 66 uint32 GetLiveObjectsForInstance(PP_Instance instance) const; |
67 // This is slow, use only for testing. | |
68 uint32 GetLiveObjectsForModule(PluginModule* module) const; | |
69 | 67 |
70 // PP_Vars ------------------------------------------------------------------- | 68 // PP_Vars ------------------------------------------------------------------- |
71 | 69 |
72 scoped_refptr<Var> GetVar(int32 var_id) const; | 70 scoped_refptr<Var> GetVar(int32 var_id) const; |
73 | 71 |
74 bool AddRefVar(int32 var_id); | 72 bool AddRefVar(int32 var_id); |
75 bool UnrefVar(int32 var_id); | 73 bool UnrefVar(int32 var_id); |
76 | 74 |
77 // PP_Modules ---------------------------------------------------------------- | 75 // PP_Modules ---------------------------------------------------------------- |
78 | 76 |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 typedef std::map<PP_Module, PluginModule*> ModuleMap; | 162 typedef std::map<PP_Module, PluginModule*> ModuleMap; |
165 ModuleMap module_map_; | 163 ModuleMap module_map_; |
166 | 164 |
167 DISALLOW_COPY_AND_ASSIGN(ResourceTracker); | 165 DISALLOW_COPY_AND_ASSIGN(ResourceTracker); |
168 }; | 166 }; |
169 | 167 |
170 } // namespace ppapi | 168 } // namespace ppapi |
171 } // namespace webkit | 169 } // namespace webkit |
172 | 170 |
173 #endif // WEBKIT_PLUGINS_PPAPI_RESOURCE_TRACKER_H_ | 171 #endif // WEBKIT_PLUGINS_PPAPI_RESOURCE_TRACKER_H_ |
OLD | NEW |