irt_ppapi.cc revision a1401311d1ab56c4ed0a474bd38c108f75cb0cd9
1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "base/logging.h" 6#include "components/nacl/loader/nonsfi/irt_interfaces.h" 7#include "ppapi/c/ppp.h" 8#include "ppapi/nacl_irt/irt_ppapi.h" 9#include "ppapi/proxy/plugin_main_irt.h" 10 11namespace nacl { 12namespace nonsfi { 13namespace { 14 15struct PP_StartFunctions g_pp_functions; 16 17int IrtPpapiStart(const struct PP_StartFunctions* funcs) { 18 g_pp_functions = *funcs; 19 return PpapiPluginMain(); 20} 21 22} // namespace 23 24const struct nacl_irt_ppapihook kIrtPpapiHook = { 25 IrtPpapiStart, 26 PpapiPluginRegisterThreadCreator, 27}; 28 29} // namespace nonsfi 30} // namespace nacl 31 32int32_t PPP_InitializeModule(PP_Module module_id, 33 PPB_GetInterface get_browser_interface) { 34 return nacl::nonsfi::g_pp_functions.PPP_InitializeModule( 35 module_id, get_browser_interface); 36} 37 38void PPP_ShutdownModule(void) { 39 nacl::nonsfi::g_pp_functions.PPP_ShutdownModule(); 40} 41 42const void *PPP_GetInterface(const char *interface_name) { 43 return nacl::nonsfi::g_pp_functions.PPP_GetInterface(interface_name); 44} 45