| /* |
| ********************************************************************** |
| * Copyright (C) 2003-2013, International Business Machines |
| * Corporation and others. All Rights Reserved. |
| ********************************************************************** |
| */ |
| |
| #ifndef __FONTTABLECACHE_H |
| |
| #define __FONTTABLECACHE_H |
| |
| #include "layout/LETypes.h" |
| |
| U_NAMESPACE_USE |
| |
| struct FontTableCacheEntry; |
| |
| class FontTableCache |
| { |
| public: |
| FontTableCache(); |
| |
| virtual ~FontTableCache(); |
| |
| const void *find(LETag tableTag, size_t &length) const; |
| |
| protected: |
| virtual const void *readFontTable(LETag tableTag, size_t &length) const = 0; |
| virtual void freeFontTable(const void *table) const; |
| |
| private: |
| |
| void add(LETag tableTag, const void *table, size_t length); |
| |
| FontTableCacheEntry *fTableCache; |
| le_int32 fTableCacheCurr; |
| le_int32 fTableCacheSize; |
| }; |
| |
| #endif |
| |