Add a new globals object for PPAPI tracking information.
[ Reland of 106142: http://codereview.chromium.org/8316008 ]
This adds a specialization on the host and plugin side of the proxy. This
replaces the ad-hoc singleton tracking done by the resource and var trackers
with just being getters on this global object.
Most code can use the single PpapiGlobals class. I also allow code to get the
host and plugin specializations since some code needs access to some specific
features of each side.
In a later pass I'll move the other stuff out of TrackerBase and delete it.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/8344025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106537 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/ppapi/proxy/ppb_audio_proxy.cc b/ppapi/proxy/ppb_audio_proxy.cc
index 453d7b0a..f1aedf71 100644
--- a/ppapi/proxy/ppb_audio_proxy.cc
+++ b/ppapi/proxy/ppb_audio_proxy.cc
@@ -16,6 +16,7 @@
#include "ppapi/proxy/plugin_dispatcher.h"
#include "ppapi/proxy/ppapi_messages.h"
#include "ppapi/shared_impl/audio_impl.h"
+#include "ppapi/shared_impl/ppapi_globals.h"
#include "ppapi/shared_impl/resource.h"
#include "ppapi/thunk/ppb_audio_config_api.h"
#include "ppapi/thunk/enter.h"
@@ -64,11 +65,11 @@
: Resource(audio_id),
config_(config_id) {
SetCallback(callback, user_data);
- PluginResourceTracker::GetInstance()->AddRefResource(config_);
+ PpapiGlobals::Get()->GetResourceTracker()->AddRefResource(config_);
}
Audio::~Audio() {
- PluginResourceTracker::GetInstance()->ReleaseResource(config_);
+ PpapiGlobals::Get()->GetResourceTracker()->ReleaseResource(config_);
}
PPB_Audio_API* Audio::AsPPB_Audio_API() {
@@ -77,7 +78,7 @@
PP_Resource Audio::GetCurrentConfig() {
// AddRef for the caller.
- PluginResourceTracker::GetInstance()->AddRefResource(config_);
+ PpapiGlobals::Get()->GetResourceTracker()->AddRefResource(config_);
return config_;
}