Clutter Engine
0.0.1
Loading...
Searching...
No Matches
ClutterEngineOpenGL
ClutterEngine
Libraries
include
FreeType
ftgzip.h
1
/***************************************************************************/
2
/* */
3
/* ftgzip.h */
4
/* */
5
/* Gzip-compressed stream support. */
6
/* */
7
/* Copyright 2002-2016 by */
8
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
9
/* */
10
/* This file is part of the FreeType project, and may only be used, */
11
/* modified, and distributed under the terms of the FreeType project */
12
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13
/* this file you indicate that you have read the license and */
14
/* understand and accept it fully. */
15
/* */
16
/***************************************************************************/
17
18
19
#ifndef FTGZIP_H_
20
#define FTGZIP_H_
21
22
#include <ft2build.h>
23
#include FT_FREETYPE_H
24
25
#ifdef FREETYPE_H
26
#error "freetype.h of FreeType 1 has been loaded!"
27
#error "Please fix the directory search order for header files"
28
#error "so that freetype.h of FreeType 2 is found first."
29
#endif
30
31
32
FT_BEGIN_HEADER
33
34
/*************************************************************************/
35
/* */
36
/* <Section> */
37
/* gzip */
38
/* */
39
/* <Title> */
40
/* GZIP Streams */
41
/* */
42
/* <Abstract> */
43
/* Using gzip-compressed font files. */
44
/* */
45
/* <Description> */
46
/* This section contains the declaration of Gzip-specific functions. */
47
/* */
48
/*************************************************************************/
49
50
51
/************************************************************************
52
*
53
* @function:
54
* FT_Stream_OpenGzip
55
*
56
* @description:
57
* Open a new stream to parse gzip-compressed font files. This is
58
* mainly used to support the compressed `*.pcf.gz' fonts that come
59
* with XFree86.
60
*
61
* @input:
62
* stream ::
63
* The target embedding stream.
64
*
65
* source ::
66
* The source stream.
67
*
68
* @return:
69
* FreeType error code. 0~means success.
70
*
71
* @note:
72
* The source stream must be opened _before_ calling this function.
73
*
74
* Calling the internal function `FT_Stream_Close' on the new stream will
75
* *not* call `FT_Stream_Close' on the source stream. None of the stream
76
* objects will be released to the heap.
77
*
78
* The stream implementation is very basic and resets the decompression
79
* process each time seeking backwards is needed within the stream.
80
*
81
* In certain builds of the library, gzip compression recognition is
82
* automatically handled when calling @FT_New_Face or @FT_Open_Face.
83
* This means that if no font driver is capable of handling the raw
84
* compressed file, the library will try to open a gzipped stream from
85
* it and re-open the face with it.
86
*
87
* This function may return `FT_Err_Unimplemented_Feature' if your build
88
* of FreeType was not compiled with zlib support.
89
*/
90
FT_EXPORT( FT_Error )
91
FT_Stream_OpenGzip(
FT_Stream
stream,
92
FT_Stream
source );
93
94
95
/************************************************************************
96
*
97
* @function:
98
* FT_Gzip_Uncompress
99
*
100
* @description:
101
* Decompress a zipped input buffer into an output buffer. This function
102
* is modeled after zlib's `uncompress' function.
103
*
104
* @input:
105
* memory ::
106
* A FreeType memory handle.
107
*
108
* input ::
109
* The input buffer.
110
*
111
* input_len ::
112
* The length of the input buffer.
113
*
114
* @output:
115
* output::
116
* The output buffer.
117
*
118
* @inout:
119
* output_len ::
120
* Before calling the function, this is the the total size of the
121
* output buffer, which must be large enough to hold the entire
122
* uncompressed data (so the size of the uncompressed data must be
123
* known in advance). After calling the function, `output_len' is the
124
* size of the used data in `output'.
125
*
126
* @return:
127
* FreeType error code. 0~means success.
128
*
129
* @note:
130
* This function may return `FT_Err_Unimplemented_Feature' if your build
131
* of FreeType was not compiled with zlib support.
132
*/
133
FT_EXPORT( FT_Error )
134
FT_Gzip_Uncompress( FT_Memory memory,
135
FT_Byte* output,
136
FT_ULong* output_len,
137
const
FT_Byte* input,
138
FT_ULong input_len );
139
140
/* */
141
142
143
FT_END_HEADER
144
145
#endif
/* FTGZIP_H_ */
146
147
148
/* END */
FT_StreamRec_
Definition
ftsystem.h:331
Generated by
1.12.0