Home | History | Annotate | Download | only in layout
      1 /*
      2  **********************************************************************
      3  *   Copyright (C) 2003-2008, International Business Machines
      4  *   Corporation and others.  All Rights Reserved.
      5  **********************************************************************
      6  */
      7 
      8 #ifndef __FONTTABLECACHE_H
      9 
     10 #define __FONTTABLECACHE_H
     11 
     12 #include "layout/LETypes.h"
     13 
     14 struct FontTableCacheEntry;
     15 
     16 class FontTableCache
     17 {
     18 public:
     19     FontTableCache();
     20 
     21     virtual ~FontTableCache();
     22 
     23     const void *find(LETag tableTag) const;
     24 
     25 protected:
     26     virtual const void *readFontTable(LETag tableTag) const = 0;
     27     virtual void freeFontTable(const void *table) const;
     28 
     29 private:
     30 
     31     void add(LETag tableTag, const void *table);
     32 
     33     FontTableCacheEntry *fTableCache;
     34     le_int32 fTableCacheCurr;
     35     le_int32 fTableCacheSize;
     36 };
     37 
     38 #endif
     39 
     40