- add sources.
[platform/framework/web/crosswalk.git] / src / ppapi / c / private / ppb_flash_font_file.h
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
6 /* From private/ppb_flash_font_file.idl modified Thu Dec 13 10:56:15 2012. */
7
8 #ifndef PPAPI_C_PRIVATE_PPB_FLASH_FONT_FILE_H_
9 #define PPAPI_C_PRIVATE_PPB_FLASH_FONT_FILE_H_
10
11 #include "ppapi/c/pp_bool.h"
12 #include "ppapi/c/pp_instance.h"
13 #include "ppapi/c/pp_macros.h"
14 #include "ppapi/c/pp_resource.h"
15 #include "ppapi/c/pp_stdint.h"
16 #include "ppapi/c/pp_var.h"
17 #include "ppapi/c/private/pp_private_font_charset.h"
18 #include "ppapi/c/trusted/ppb_browser_font_trusted.h"
19
20 #define PPB_FLASH_FONTFILE_INTERFACE_0_1 "PPB_Flash_FontFile;0.1"
21 #define PPB_FLASH_FONTFILE_INTERFACE PPB_FLASH_FONTFILE_INTERFACE_0_1
22
23 /**
24  * @file
25  * This file contains the <code>PPB_Flash_FontFile</code> interface.
26  */
27
28
29 /**
30  * @addtogroup Interfaces
31  * @{
32  */
33 struct PPB_Flash_FontFile_0_1 {
34   /* Returns a resource identifying a font file corresponding to the given font
35    * request after applying the browser-specific fallback.
36    */
37   PP_Resource (*Create)(
38       PP_Instance instance,
39       const struct PP_BrowserFont_Trusted_Description* description,
40       PP_PrivateFontCharset charset);
41   /* Determines if a given resource is Flash font file.
42    */
43   PP_Bool (*IsFlashFontFile)(PP_Resource resource);
44   /* Returns the requested font table.
45    * |output_length| should pass in the size of |output|. And it will return
46    * the actual length of returned data. |output| could be NULL in order to
47    * query the size of the buffer size needed. In that case, the input value of
48    * |output_length| is ignored.
49    * Note: it is Linux only and fails directly on other platforms.
50    */
51   PP_Bool (*GetFontTable)(PP_Resource font_file,
52                           uint32_t table,
53                           void* output,
54                           uint32_t* output_length);
55 };
56
57 typedef struct PPB_Flash_FontFile_0_1 PPB_Flash_FontFile;
58 /**
59  * @}
60  */
61
62 #endif  /* PPAPI_C_PRIVATE_PPB_FLASH_FONT_FILE_H_ */
63