• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 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 #ifndef PPAPI_THUNK_PPB_BUFFER_API_H_
6 #define PPAPI_THUNK_PPB_BUFFER_API_H_
7 
8 #include "ppapi/c/pp_bool.h"
9 #include "ppapi/c/pp_stdint.h"
10 #include "ppapi/thunk/ppapi_thunk_export.h"
11 
12 namespace ppapi {
13 namespace thunk {
14 
15 class PPAPI_THUNK_EXPORT PPB_Buffer_API {
16  public:
~PPB_Buffer_API()17   virtual ~PPB_Buffer_API() {}
18 
19   virtual PP_Bool Describe(uint32_t* size_in_bytes) = 0;
20   virtual PP_Bool IsMapped() = 0;
21   virtual void* Map() = 0;
22   virtual void Unmap() = 0;
23 
24   // Trusted API
25   virtual int32_t GetSharedMemory(int* handle) = 0;
26 };
27 
28 }  // namespace thunk
29 }  // namespace ppapi
30 
31 #endif  // PPAPI_THUNK_PPB_BUFFER_API_H_
32