Automated Commit: Committing new LKGM version 7479.0.0 for chromeos.
[chromium-blink-merge.git] / mojo / platform_handle / platform_handle_private_thunks.h
blob285497a2fc0e94246ac77b740c1e23f6e9c0caea
1 // Copyright 2015 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.
5 #ifndef MOJO_PLATFORM_HANDLE_PLATFORM_HANDLE_PRIVATE_THUNKS_H_
6 #define MOJO_PLATFORM_HANDLE_PLATFORM_HANDLE_PRIVATE_THUNKS_H_
8 #include <stddef.h>
10 #include "mojo/platform_handle/platform_handle_functions.h"
12 #pragma pack(push, 8)
13 struct MojoPlatformHandlePrivateThunks {
14 size_t size; // Should be set to sizeof(PlatformHandleThunks).
15 MojoResult (*CreatePlatformHandleWrapper)(MojoPlatformHandle, MojoHandle*);
16 MojoResult (*ExtractPlatformHandle)(MojoHandle, MojoPlatformHandle*);
18 #pragma pack(pop)
20 inline MojoPlatformHandlePrivateThunks MojoMakePlatformHandlePrivateThunks() {
21 MojoPlatformHandlePrivateThunks system_thunks = {
22 sizeof(MojoPlatformHandlePrivateThunks),
23 MojoCreatePlatformHandleWrapper,
24 MojoExtractPlatformHandle};
25 return system_thunks;
28 typedef size_t (*MojoSetPlatformHandlePrivateThunksFn)(
29 const struct MojoPlatformHandlePrivateThunks* thunks);
31 #endif // MOJO_PLATFORM_HANDLE_PLATFORM_HANDLE_PRIVATE_THUNKS_H_