]> git.saurik.com Git - apple/icu.git/blame - icuSources/test/perf/leperf/FontTableCache.h
ICU-59117.0.1.tar.gz
[apple/icu.git] / icuSources / test / perf / leperf / FontTableCache.h
CommitLineData
57a6839d 1/*
f3c0d7a5
A
2 **********************************************************************
3 * © 2016 and later: Unicode, Inc. and others.
4 * License & terms of use: http://www.unicode.org/copyright.html#License
5 **********************************************************************
57a6839d
A
6 **********************************************************************
7 * Copyright (C) 2003-2013, International Business Machines
8 * Corporation and others. All Rights Reserved.
9 **********************************************************************
10 */
11
12#ifndef __FONTTABLECACHE_H
13
14#define __FONTTABLECACHE_H
15
16#include "layout/LETypes.h"
17
18U_NAMESPACE_USE
19
20struct FontTableCacheEntry;
21
22class FontTableCache
23{
24public:
25 FontTableCache();
26
27 virtual ~FontTableCache();
28
29 const void *find(LETag tableTag, size_t &length) const;
30
31protected:
32 virtual const void *readFontTable(LETag tableTag, size_t &length) const = 0;
33 virtual void freeFontTable(const void *table) const;
34
35private:
36
37 void add(LETag tableTag, const void *table, size_t length);
38
39 FontTableCacheEntry *fTableCache;
40 le_int32 fTableCacheCurr;
41 le_int32 fTableCacheSize;
42};
43
44#endif
45