Back to index

texmacs  1.0.7.15
load_pk.hpp
Go to the documentation of this file.
00001 
00002 /******************************************************************************
00003 * MODULE     : load_pk.h
00004 * DESCRIPTION: load pk files
00005 * COPYRIGHT  : (C) 1999  Joris van der Hoeven
00006 *******************************************************************************
00007 * This software falls under the GNU general public license version 3 or later.
00008 * It comes WITHOUT ANY WARRANTY WHATSOEVER. For details, see the file LICENSE
00009 * in the root directory or <http://www.gnu.org/licenses/gpl-3.0.html>.
00010 ******************************************************************************/
00011 
00012 #ifndef LOAD_PK_H
00013 #define LOAD_PK_H
00014 #include "file.hpp"
00015 #include "tex_files.hpp"
00016 #include "load_tfm.hpp"
00017 #include "bitmap_font.hpp"
00018 
00019 struct pk_loader {
00020   url             file_name;
00021   string          input_s;
00022   int             input_pos;
00023   tex_font_metric tfm;
00024   int             dpi;
00025 
00026   HN   inputbyte;
00027   HN   flagbyte; 
00028   HN   bitweight; 
00029   HN   dynf;
00030   HN   repeatcount;
00031   long remainder;
00032   bool real_func_flag;
00033   int  bc;
00034   int  ec;
00035   
00036   /* for lazy unpacking */
00037   int*  char_pos;
00038   HN*   char_flag;
00039   bool* unpacked;
00040   
00041   pk_loader (url pk_file_name, tex_font_metric tfm, int dpi);
00042   HI pkbyte ();
00043   SI pkquad ();
00044   SI pktrio ();
00045   SI pkduo  ();
00046   HI getnyb ();
00047   bool getbit ();
00048   HN pkpackednum ();  
00049   HN rest ();
00050   HN realfunc ();
00051   HN handlehuge (HN i, HN k);
00052   void unpack (glyph& gl);
00053   glyph* load_pk ();
00054 };
00055 
00056 #endif // defined LOAD_PK_H