1/***************************************************************************/
2/*                                                                         */
3/*  pspic.h                                                                */
4/*                                                                         */
5/*    The FreeType position independent code services for psnames module.  */
6/*                                                                         */
7/*  Copyright 2009-2015 by                                                 */
8/*  Oran Agra and Mickey Gabel.                                            */
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 __PSPIC_H__
20#define __PSPIC_H__
21
22
23#include FT_INTERNAL_PIC_H
24
25
26#ifndef FT_CONFIG_OPTION_PIC
27
28#define PSCMAPS_SERVICES_GET   pscmaps_services
29#define PSCMAPS_INTERFACE_GET  pscmaps_interface
30
31#else /* FT_CONFIG_OPTION_PIC */
32
33#include FT_SERVICE_POSTSCRIPT_CMAPS_H
34
35
36FT_BEGIN_HEADER
37
38  typedef struct  PSModulePIC_
39  {
40    FT_ServiceDescRec*     pscmaps_services;
41    FT_Service_PsCMapsRec  pscmaps_interface;
42
43  } PSModulePIC;
44
45
46#define GET_PIC( lib )                                     \
47          ( (PSModulePIC*)((lib)->pic_container.psnames) )
48#define PSCMAPS_SERVICES_GET   ( GET_PIC( library )->pscmaps_services )
49#define PSCMAPS_INTERFACE_GET  ( GET_PIC( library )->pscmaps_interface )
50
51
52  /* see pspic.c for the implementation */
53  void
54  psnames_module_class_pic_free( FT_Library  library );
55
56  FT_Error
57  psnames_module_class_pic_init( FT_Library  library );
58
59FT_END_HEADER
60
61#endif /* FT_CONFIG_OPTION_PIC */
62
63 /* */
64
65#endif /* __PSPIC_H__ */
66
67
68/* END */
69