blob: bf98c3ddfc5e49d391b655fa4f6f3ad29fe4a1a6 [file] [log] [blame]
yusukes@chromium.orgd257d182009-11-04 04:56:32 +00001// Copyright (c) 2009 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef OTS_CMAP_H_
6#define OTS_CMAP_H_
7
8#include <vector>
9
10#include "ots.h"
11
12namespace ots {
13
14struct OpenTypeCMAPSubtableRange {
15 uint32_t start_range;
16 uint32_t end_range;
17 uint32_t start_glyph_id;
18};
19
20struct OpenTypeCMAP {
21 OpenTypeCMAP()
22 : subtable_304_data(NULL),
23 subtable_304_length(0),
24 subtable_314_data(NULL),
25 subtable_314_length(0) {
26 }
27
28 const uint8_t *subtable_304_data;
29 size_t subtable_304_length;
30 const uint8_t *subtable_314_data;
31 size_t subtable_314_length;
32 std::vector<OpenTypeCMAPSubtableRange> subtable_31012;
33 std::vector<OpenTypeCMAPSubtableRange> subtable_31013;
34 std::vector<uint8_t> subtable_100;
35};
36
37} // namespace ots
38
39#endif