ftbdf.h revision 9c745321260bb728ab1cd1c8fd5f075854b2ad49
1aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/***************************************************************************/
2aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*                                                                         */
3aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*  ftbdf.h                                                                */
4aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*                                                                         */
5aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*    FreeType API for accessing BDF-specific strings (specification).     */
6aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*                                                                         */
7aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*  Copyright 2002-2004, 2006, 2009, 2014 by                               */
8aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
9aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*                                                                         */
10aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*  This file is part of the FreeType project, and may only be used,       */
11aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*  modified, and distributed under the terms of the FreeType project      */
12aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
13aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*  this file you indicate that you have read the license and              */
14aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*  understand and accept it fully.                                        */
15aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/*                                                                         */
16aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/***************************************************************************/
1720ed7b24df05eadf83168d1d0ce0052a31380928Stephen Hemminger
18aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
19aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#ifndef __FTBDF_H__
20aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#define __FTBDF_H__
21aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
22aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#include <ft2build.h>
23aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#include FT_FREETYPE_H
24aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
25aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#ifdef FREETYPE_H
26aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#error "freetype.h of FreeType 1 has been loaded!"
27aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#error "Please fix the directory search order for header files"
28aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#error "so that freetype.h of FreeType 2 is found first."
29aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#endif
30aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
31aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
32aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemmingerFT_BEGIN_HEADER
33aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
34aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
35aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*************************************************************************/
36aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*                                                                       */
37aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /* <Section>                                                             */
38aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*    bdf_fonts                                                          */
39aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*                                                                       */
40aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /* <Title>                                                               */
41aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*    BDF and PCF Files                                                  */
42aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*                                                                       */
43aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /* <Abstract>                                                            */
44aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*    BDF and PCF specific API.                                          */
45aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*                                                                       */
46aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /* <Description>                                                         */
47aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*    This section contains the declaration of functions specific to BDF */
48aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*    and PCF fonts.                                                     */
49aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*                                                                       */
50aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /*************************************************************************/
51aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
52aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
53aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /**********************************************************************
54aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *
55aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   * @enum:
56aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    FT_PropertyType
57aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *
58aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   * @description:
59aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    A list of BDF property types.
60aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *
61aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   * @values:
62aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    BDF_PROPERTY_TYPE_NONE ::
63aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *      Value~0 is used to indicate a missing property.
64aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *
65aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    BDF_PROPERTY_TYPE_ATOM ::
66aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *      Property is a string atom.
67aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *
68aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    BDF_PROPERTY_TYPE_INTEGER ::
69aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *      Property is a 32-bit signed integer.
70aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *
71aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    BDF_PROPERTY_TYPE_CARDINAL ::
72aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *      Property is a 32-bit unsigned integer.
73aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   */
74aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  typedef enum  BDF_PropertyType_
75aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  {
76aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger    BDF_PROPERTY_TYPE_NONE     = 0,
77aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger    BDF_PROPERTY_TYPE_ATOM     = 1,
78aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger    BDF_PROPERTY_TYPE_INTEGER  = 2,
79aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger    BDF_PROPERTY_TYPE_CARDINAL = 3
80aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
81aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  } BDF_PropertyType;
82aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
83aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
84aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  /**********************************************************************
85aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *
86aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   * @type:
87aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    BDF_Property
88aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *
89aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   * @description:
90aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    A handle to a @BDF_PropertyRec structure to model a given
91aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   *    BDF/PCF property.
92aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger   */
93aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  typedef struct BDF_PropertyRec_*  BDF_Property;
94aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
95aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
96aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger /**********************************************************************
97aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
98aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @struct:
99aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    BDF_PropertyRec
100aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
101aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @description:
102aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    This structure models a given BDF/PCF property.
103aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
104aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @fields:
105aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    type ::
106aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *      The property type.
107aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
108aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    u.atom ::
109aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *      The atom string, if type is @BDF_PROPERTY_TYPE_ATOM.  May be
110aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *      NULL, indicating an empty string.
111aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
112aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    u.integer ::
113aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *      A signed integer, if type is @BDF_PROPERTY_TYPE_INTEGER.
114aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
115aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    u.cardinal ::
116aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *      An unsigned integer, if type is @BDF_PROPERTY_TYPE_CARDINAL.
117aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  */
118aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  typedef struct  BDF_PropertyRec_
119aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  {
120aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger    BDF_PropertyType  type;
121aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger    union {
122aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger      const char*     atom;
123aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger      FT_Int32        integer;
124aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger      FT_UInt32       cardinal;
125aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
126aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger    } u;
127aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
128aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  } BDF_PropertyRec;
129aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
130aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
131aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger /**********************************************************************
132aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
133aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @function:
134aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    FT_Get_BDF_Charset_ID
135aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
136aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @description:
137aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    Retrieve a BDF font character set identity, according to
138aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    the BDF specification.
139aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
140aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @input:
141aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    face ::
142aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *       A handle to the input face.
143aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
144aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @output:
145aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    acharset_encoding ::
146aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *       Charset encoding, as a C~string, owned by the face.
147aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
148aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    acharset_registry ::
149aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *       Charset registry, as a C~string, owned by the face.
150aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
151aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @return:
152aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   FreeType error code.  0~means success.
153aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
154aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @note:
155aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   This function only works with BDF faces, returning an error otherwise.
156aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  */
157aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  FT_EXPORT( FT_Error )
158aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  FT_Get_BDF_Charset_ID( FT_Face       face,
159aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger                         const char*  *acharset_encoding,
160aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger                         const char*  *acharset_registry );
161aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
162aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
163aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger /**********************************************************************
164aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
165aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @function:
166aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    FT_Get_BDF_Property
167aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
168aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @description:
169aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    Retrieve a BDF property from a BDF or PCF font file.
170aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
171aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @input:
172aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    face :: A handle to the input face.
173aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
174aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    name :: The property name.
175aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
176aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @output:
177aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *    aproperty :: The property.
178aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
179aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @return:
180aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   FreeType error code.  0~means success.
181aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
182aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  * @note:
183aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   This function works with BDF _and_ PCF fonts.  It returns an error
184aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   otherwise.  It also returns an error if the property is not in the
185aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   font.
186aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
187aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   A `property' is a either key-value pair within the STARTPROPERTIES
188aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   ... ENDPROPERTIES block of a BDF font or a key-value pair from the
189aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   `info->props' array within a `FontRec' structure of a PCF font.
190aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
191aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   Integer properties are always stored as `signed' within PCF fonts;
192aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   consequently, @BDF_PROPERTY_TYPE_CARDINAL is a possible return value
193aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   for BDF fonts only.
194aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *
195aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   In case of error, `aproperty->type' is always set to
196aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  *   @BDF_PROPERTY_TYPE_NONE.
197aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  */
198aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  FT_EXPORT( FT_Error )
199aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger  FT_Get_BDF_Property( FT_Face           face,
200aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger                       const char*       prop_name,
201aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger                       BDF_PropertyRec  *aproperty );
202aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
203aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger /* */
204aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
205aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemmingerFT_END_HEADER
206aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
207aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger#endif /* __FTBDF_H__ */
208aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
209aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger
210aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger/* END */
211aba5acdfdb347d2c21fc67d613d83d4430ca3937osdl.org!shemminger