Home | History | Annotate | Download | only in thunk
      1 // Copyright (c) 2012 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 // From dev/ppb_device_ref_dev.idl modified Tue Aug 20 08:13:36 2013.
      6 
      7 #include "ppapi/c/dev/ppb_device_ref_dev.h"
      8 #include "ppapi/c/pp_errors.h"
      9 #include "ppapi/shared_impl/tracked_callback.h"
     10 #include "ppapi/thunk/enter.h"
     11 #include "ppapi/thunk/ppapi_thunk_export.h"
     12 #include "ppapi/thunk/ppb_device_ref_api.h"
     13 
     14 namespace ppapi {
     15 namespace thunk {
     16 
     17 namespace {
     18 
     19 PP_Bool IsDeviceRef(PP_Resource resource) {
     20   VLOG(4) << "PPB_DeviceRef_Dev::IsDeviceRef()";
     21   EnterResource<PPB_DeviceRef_API> enter(resource, false);
     22   return PP_FromBool(enter.succeeded());
     23 }
     24 
     25 PP_DeviceType_Dev GetType(PP_Resource device_ref) {
     26   VLOG(4) << "PPB_DeviceRef_Dev::GetType()";
     27   EnterResource<PPB_DeviceRef_API> enter(device_ref, true);
     28   if (enter.failed())
     29     return PP_DEVICETYPE_DEV_INVALID;
     30   return enter.object()->GetType();
     31 }
     32 
     33 struct PP_Var GetName(PP_Resource device_ref) {
     34   VLOG(4) << "PPB_DeviceRef_Dev::GetName()";
     35   EnterResource<PPB_DeviceRef_API> enter(device_ref, true);
     36   if (enter.failed())
     37     return PP_MakeUndefined();
     38   return enter.object()->GetName();
     39 }
     40 
     41 const PPB_DeviceRef_Dev_0_1 g_ppb_deviceref_dev_thunk_0_1 = {
     42   &IsDeviceRef,
     43   &GetType,
     44   &GetName
     45 };
     46 
     47 }  // namespace
     48 
     49 PPAPI_THUNK_EXPORT const PPB_DeviceRef_Dev_0_1*
     50     GetPPB_DeviceRef_Dev_0_1_Thunk() {
     51   return &g_ppb_deviceref_dev_thunk_0_1;
     52 }
     53 
     54 }  // namespace thunk
     55 }  // namespace ppapi
     56