/* * Copyright (c) 2011 The Chromium Authors. All rights reserved. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ /* From test_cgen/interface.idl modified Wed Nov 21 14:22:50 2012. */ #ifndef PPAPI_C_TEST_CGEN_INTERFACE_H_ #define PPAPI_C_TEST_CGEN_INTERFACE_H_ #include "ppapi/c/pp_macros.h" #include "ppapi/c/test_cgen/stdint.h" #define IFACEFOO_INTERFACE_1_0 "ifaceFoo;1.0" #define IFACEFOO_INTERFACE IFACEFOO_INTERFACE_1_0 #define IFACEBAR_INTERFACE_1_0 "ifaceBar;1.0" #define IFACEBAR_INTERFACE IFACEBAR_INTERFACE_1_0 /** * @file * This file will test that the IDL snippet matches the comment. */ /** * @addtogroup Structs * @{ */ /* struct ist { void* X; }; */ struct ist { void* X; }; /** * @} */ /** * @addtogroup Interfaces * @{ */ /* * struct ifaceFoo_1_0 { * int8_t (*mem1)(int16_t x, int32_t y); * int32_t (*mem2)(const struct ist* a); * int32_t (*mem3)(struct ist* b); * int32_t (*mem4)(const void** ptr); * int32_t (*mem5)(void** ptr); * }; * typedef struct ifaceFoo_1_0 ifaceFoo; */ struct ifaceFoo_1_0 { int8_t (*mem1)(int16_t x, int32_t y); int32_t (*mem2)(const struct ist* a); int32_t (*mem3)(struct ist* b); int32_t (*mem4)(const void** ptr); int32_t (*mem5)(void** ptr); }; typedef struct ifaceFoo_1_0 ifaceFoo; struct ifaceBar_1_0 { int8_t (*testIface)(const struct ifaceFoo_1_0* foo, int32_t y); struct ifaceFoo_1_0* (*createIface)(const char* name); }; typedef struct ifaceBar_1_0 ifaceBar; struct ifaceNoString_1_0 { void (*mem)(void); }; typedef struct ifaceNoString_1_0 ifaceNoString; /** * @} */ /** * @addtogroup Structs * @{ */ struct struct2 { struct ifaceBar_1_0* bar; }; /** * @} */ #endif /* PPAPI_C_TEST_CGEN_INTERFACE_H_ */