summaryrefslogtreecommitdiffstats
path: root/ppapi/cpp/instance.cc
diff options
context:
space:
mode:
authorneb@chromium.org <neb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-20 19:03:07 +0000
committerneb@chromium.org <neb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-20 19:03:07 +0000
commit6b7550abfbaa42801809e95609efad917cd64f18 (patch)
treec748a358dab03c9b8ce5490a02eee5ef3ef64085 /ppapi/cpp/instance.cc
parentac873735ca81b77f9986e19b8c7f6347e9e026bc (diff)
downloadchromium_src-6b7550abfbaa42801809e95609efad917cd64f18.zip
chromium_src-6b7550abfbaa42801809e95609efad917cd64f18.tar.gz
chromium_src-6b7550abfbaa42801809e95609efad917cd64f18.tar.bz2
Remove static initializers.
BUG=52915 TEST=no new functionality, passes ppapi_tests Review URL: http://codereview.chromium.org/5797006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69732 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/cpp/instance.cc')
-rw-r--r--ppapi/cpp/instance.cc43
1 files changed, 25 insertions, 18 deletions
diff --git a/ppapi/cpp/instance.cc b/ppapi/cpp/instance.cc
index 394be04..379518d 100644
--- a/ppapi/cpp/instance.cc
+++ b/ppapi/cpp/instance.cc
@@ -17,14 +17,16 @@
#include "ppapi/cpp/resource.h"
#include "ppapi/cpp/var.h"
+namespace pp {
+
namespace {
-DeviceFuncs<PPB_Instance> ppb_instance_f(PPB_INSTANCE_INTERFACE);
+template <> const char* interface_name<PPB_Instance>() {
+ return PPB_INSTANCE_INTERFACE;
+}
} // namespace
-namespace pp {
-
Instance::Instance(PP_Instance instance) : pp_instance_(instance) {
}
@@ -68,44 +70,49 @@ Var Instance::GetSelectedText(bool /* html */) {
}
Var Instance::GetWindowObject() {
- if (!ppb_instance_f)
+ if (!has_interface<PPB_Instance>())
return Var();
- return Var(Var::PassRef(), ppb_instance_f->GetWindowObject(pp_instance()));
+ return Var(Var::PassRef(),
+ get_interface<PPB_Instance>()->GetWindowObject(pp_instance()));
}
Var Instance::GetOwnerElementObject() {
- if (!ppb_instance_f)
+ if (!has_interface<PPB_Instance>())
return Var();
return Var(Var::PassRef(),
- ppb_instance_f->GetOwnerElementObject(pp_instance()));
+ get_interface<PPB_Instance>()->GetOwnerElementObject(
+ pp_instance()));
}
bool Instance::BindGraphics(const Graphics2D& graphics) {
- if (!ppb_instance_f)
+ if (!has_interface<PPB_Instance>())
return false;
- return PPBoolToBool(ppb_instance_f->BindGraphics(pp_instance(),
- graphics.pp_resource()));
+ return PPBoolToBool(get_interface<PPB_Instance>()->BindGraphics(
+ pp_instance(), graphics.pp_resource()));
}
bool Instance::BindGraphics(const Graphics3D_Dev& graphics) {
- if (!ppb_instance_f)
+ if (!has_interface<PPB_Instance>())
return false;
- return PPBoolToBool(ppb_instance_f->BindGraphics(pp_instance(),
- graphics.pp_resource()));
+ return PPBoolToBool(get_interface<PPB_Instance>()->BindGraphics(
+ pp_instance(), graphics.pp_resource()));
}
bool Instance::IsFullFrame() {
- if (!ppb_instance_f)
+ if (!has_interface<PPB_Instance>())
return false;
- return PPBoolToBool(ppb_instance_f->IsFullFrame(pp_instance()));
+ return PPBoolToBool(get_interface<PPB_Instance>()->IsFullFrame(
+ pp_instance()));
}
Var Instance::ExecuteScript(const Var& script, Var* exception) {
- if (!ppb_instance_f)
+ if (!has_interface<PPB_Instance>())
return Var();
return Var(Var::PassRef(),
- ppb_instance_f->ExecuteScript(pp_instance(), script.pp_var(),
- Var::OutException(exception).get()));
+ get_interface<PPB_Instance>()->ExecuteScript(
+ pp_instance(),
+ script.pp_var(),
+ Var::OutException(exception).get()));
}
void Instance::AddPerInstanceObject(const std::string& interface_name,