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

Unified Diff: webkit/plugins/ppapi/host_var_tracker.h

Issue 20165002: Move webkit/plugins/ppapi to content/renderer/pepper. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: more more clang fun Created 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webkit/plugins/ppapi/host_globals.cc ('k') | webkit/plugins/ppapi/host_var_tracker.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/plugins/ppapi/host_var_tracker.h
===================================================================
--- webkit/plugins/ppapi/host_var_tracker.h (revision 213561)
+++ webkit/plugins/ppapi/host_var_tracker.h (working copy)
@@ -1,110 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef WEBKIT_PLUGINS_PPAPI_HOST_VAR_TRACKER_H_
-#define WEBKIT_PLUGINS_PPAPI_HOST_VAR_TRACKER_H_
-
-#include <map>
-
-#include "base/basictypes.h"
-#include "base/compiler_specific.h"
-#include "base/containers/hash_tables.h"
-#include "base/gtest_prod_util.h"
-#include "base/memory/linked_ptr.h"
-#include "base/memory/ref_counted.h"
-#include "ppapi/c/pp_instance.h"
-#include "ppapi/shared_impl/host_resource.h"
-#include "ppapi/shared_impl/resource_tracker.h"
-#include "ppapi/shared_impl/var_tracker.h"
-#include "webkit/plugins/webkit_plugins_export.h"
-
-typedef struct NPObject NPObject;
-
-namespace ppapi {
-class ArrayBufferVar;
-class NPObjectVar;
-class Var;
-}
-
-namespace webkit {
-namespace ppapi {
-
-// Adds NPObject var tracking to the standard PPAPI VarTracker for use in the
-// renderer.
-class HostVarTracker : public ::ppapi::VarTracker {
- public:
- HostVarTracker();
- virtual ~HostVarTracker();
-
- // Tracks all live NPObjectVar. This is so we can map between instance +
- // NPObject and get the NPObjectVar corresponding to it. This Add/Remove
- // function is called by the NPObjectVar when it is created and
- // destroyed.
- void AddNPObjectVar(::ppapi::NPObjectVar* object_var);
- void RemoveNPObjectVar(::ppapi::NPObjectVar* object_var);
-
- // Looks up a previously registered NPObjectVar for the given NPObject and
- // instance. Returns NULL if there is no NPObjectVar corresponding to the
- // given NPObject for the given instance. See AddNPObjectVar above.
- ::ppapi::NPObjectVar* NPObjectVarForNPObject(PP_Instance instance,
- NPObject* np_object);
-
- // Returns the number of NPObjectVar's associated with the given instance.
- // Returns 0 if the instance isn't known.
- WEBKIT_PLUGINS_EXPORT int GetLiveNPObjectVarsForInstance(
- PP_Instance instance) const;
-
- // VarTracker public implementation.
- virtual void DidDeleteInstance(PP_Instance instance) OVERRIDE;
-
- virtual int TrackSharedMemoryHandle(PP_Instance instance,
- base::SharedMemoryHandle file,
- uint32 size_in_bytes) OVERRIDE;
- virtual bool StopTrackingSharedMemoryHandle(int id,
- PP_Instance instance,
- base::SharedMemoryHandle* handle,
- uint32* size_in_bytes) OVERRIDE;
-
- private:
- // VarTracker private implementation.
- virtual ::ppapi::ArrayBufferVar* CreateArrayBuffer(
- uint32 size_in_bytes) OVERRIDE;
- virtual ::ppapi::ArrayBufferVar* CreateShmArrayBuffer(
- uint32 size_in_bytes, base::SharedMemoryHandle handle) OVERRIDE;
-
- // Clear the reference count of the given object and remove it from
- // live_vars_.
- void ForceReleaseNPObject(::ppapi::NPObjectVar* object_var);
-
- typedef std::map<NPObject*, ::ppapi::NPObjectVar*>
- NPObjectToNPObjectVarMap;
-
- // Lists all known NPObjects, first indexed by the corresponding instance,
- // then by the NPObject*. This allows us to look up an NPObjectVar given
- // these two pieces of information.
- //
- // The instance map is lazily managed, so we'll add the
- // NPObjectToNPObjectVarMap lazily when the first NPObject var is created,
- // and delete it when it's empty.
- typedef std::map<PP_Instance, linked_ptr<NPObjectToNPObjectVarMap> >
- InstanceMap;
- InstanceMap instance_map_;
-
- // Tracks all shared memory handles used for transmitting array buffers.
- struct SharedMemoryMapEntry {
- PP_Instance instance;
- base::SharedMemoryHandle handle;
- uint32 size_in_bytes;
- };
- typedef std::map<int, SharedMemoryMapEntry> SharedMemoryMap;
- SharedMemoryMap shared_memory_map_;
- uint32_t last_shared_memory_map_id_;
-
- DISALLOW_COPY_AND_ASSIGN(HostVarTracker);
-};
-
-} // namespace ppapi
-} // namespace webkit
-
-#endif // WEBKIT_PLUGINS_PPAPI_HOST_VAR_TRACKER_H_
« no previous file with comments | « webkit/plugins/ppapi/host_globals.cc ('k') | webkit/plugins/ppapi/host_var_tracker.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698