blob: fd8d749acec06d4c8b82a6356bf0a9b1d53399c5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
// -*- related-file-name: "../../libefont/encoding.cc" -*-
#ifndef EFONT_ENCODING_HH
#define EFONT_ENCODING_HH
#include <lcdf/vector.hh>
namespace Efont {
typedef int GlyphIndex;
class Encoding8 {
Vector<GlyphIndex> _codes;
Vector<int> _code_map;
public:
Encoding8() : _code_map(256, -1) { }
void reserve_glyphs(int);
int code(GlyphIndex gi) const { return _codes[gi]; }
GlyphIndex find_code(int c) const { return _code_map[c]; }
void set_code(GlyphIndex gi, int c) { _codes[gi] = c; _code_map[c] = gi; }
};
}
#endif
|