1464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com/*
2464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * Copyright 2011 Google Inc. All Rights Reserved.
3464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com *
4464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * Licensed under the Apache License, Version 2.0 (the "License");
5464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * you may not use this file except in compliance with the License.
6464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * You may obtain a copy of the License at
7464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com *
8464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com *      http://www.apache.org/licenses/LICENSE-2.0
9464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com *
10464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * Unless required by applicable law or agreed to in writing, software
11464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * distributed under the License is distributed on an "AS IS" BASIS,
12464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * See the License for the specific language governing permissions and
14464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * limitations under the License.
15464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com */
16464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
175af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com#include "sfntly/table/core/horizontal_header_table.h"
18464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
19464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.comnamespace sfntly {
20464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com/******************************************************************************
21464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * HorizontalHeaderTable class
22464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com ******************************************************************************/
23464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.comHorizontalHeaderTable:: ~HorizontalHeaderTable() {}
24464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
25b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.comint32_t HorizontalHeaderTable::TableVersion() {
26246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadFixed(Offset::kVersion);
27464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
28464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
29246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Ascender() {
30246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kAscender);
31464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
32464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
33246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Descender() {
34246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kDescender);
35464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
36464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
37246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::LineGap() {
38246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kLineGap);
39464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
40464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
41246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::AdvanceWidthMax() {
42246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadUShort(Offset::kAdvanceWidthMax);
43464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
44464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
45246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::MinLeftSideBearing() {
46246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kMinLeftSideBearing);
47464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
48464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
49246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::MinRightSideBearing() {
50246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kMinRightSideBearing);
51464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
52464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
53246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::XMaxExtent() {
54246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kXMaxExtent);
55464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
56464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
57246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::CaretSlopeRise() {
58246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kCaretSlopeRise);
59464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
60464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
61246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::CaretSlopeRun() {
62246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kCaretSlopeRun);
63464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
64464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
65246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::CaretOffset() {
66246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kCaretOffset);
67464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
68464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
69246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::MetricDataFormat() {
70246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadShort(Offset::kMetricDataFormat);
71464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
72464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
73246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::NumberOfHMetrics() {
74246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return data_->ReadUShort(Offset::kNumberOfHMetrics);
75246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com}
76246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com
77246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comHorizontalHeaderTable:: HorizontalHeaderTable(Header* header,
78246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com                                              ReadableFontData* data)
79246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com    : Table(header, data) {
80464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
81464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
82464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com/******************************************************************************
83464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com * HorizontalHeaderTable::Builder class
84464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com ******************************************************************************/
85b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.comHorizontalHeaderTable::Builder::Builder(Header* header, WritableFontData* data)
866b8e073e978eed96605da6f92d6db740a39864baarthurhsu@google.com    : TableBasedTableBuilder(header, data) {
87464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
88464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
89b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.comHorizontalHeaderTable::Builder::Builder(Header* header, ReadableFontData* data)
906b8e073e978eed96605da6f92d6db740a39864baarthurhsu@google.com    : TableBasedTableBuilder(header, data) {
91464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
92464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
93464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.comHorizontalHeaderTable::Builder::~Builder() {}
94464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
95246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comCALLER_ATTACH FontDataTable*
96246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com    HorizontalHeaderTable::Builder::SubBuildTable(ReadableFontData* data) {
97464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com  FontDataTablePtr table = new HorizontalHeaderTable(header(), data);
98246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return table.Detach();
99464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
100464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
101b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.comCALLER_ATTACH HorizontalHeaderTable::Builder*
102b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.com    HorizontalHeaderTable::Builder::CreateBuilder(Header* header,
103b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.com                                                  WritableFontData* data) {
104b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.com  Ptr<HorizontalHeaderTable::Builder> builder;
105b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.com  builder = new HorizontalHeaderTable::Builder(header, data);
106b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.com  return builder.Detach();
107b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.com}
108b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.com
109b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.comint32_t HorizontalHeaderTable::Builder::TableVersion() {
110246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return InternalReadData()->ReadFixed(Offset::kVersion);
111464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
112464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
113b54cce09c1fc2b09e2adae43d7eb017b47b0cccfarthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetTableVersion(int32_t version) {
114246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  InternalWriteData()->WriteFixed(Offset::kVersion, version);
115464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
116464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
117246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::Ascender() {
1185af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  return InternalReadData()->ReadShort(Offset::kAscender);
119464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
120464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
121246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetAscender(int32_t ascender) {
1225af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  InternalWriteData()->WriteShort(Offset::kVersion, ascender);
123464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
124464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
125246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::Descender() {
1265af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  return InternalReadData()->ReadShort(Offset::kDescender);
127464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
128464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
129246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetDescender(int32_t descender) {
1305af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  InternalWriteData()->WriteShort(Offset::kDescender, descender);
131464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
132464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
133246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::LineGap() {
1345af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  return InternalReadData()->ReadShort(Offset::kLineGap);
135464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
136464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
137246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetLineGap(int32_t line_gap) {
1385af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  InternalWriteData()->WriteShort(Offset::kLineGap, line_gap);
139464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
140464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
141246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::AdvanceWidthMax() {
142246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return InternalReadData()->ReadUShort(Offset::kAdvanceWidthMax);
143464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
144464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
145246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetAdvanceWidthMax(int32_t value) {
146246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  InternalWriteData()->WriteUShort(Offset::kAdvanceWidthMax, value);
147464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
148464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
149246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::MinLeftSideBearing() {
1505af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  return InternalReadData()->ReadShort(Offset::kMinLeftSideBearing);
151464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
152464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
153246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetMinLeftSideBearing(int32_t value) {
1545af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  InternalWriteData()->WriteShort(Offset::kMinLeftSideBearing, value);
155464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
156464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
157246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::MinRightSideBearing() {
1585af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  return InternalReadData()->ReadShort(Offset::kMinRightSideBearing);
159464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
160464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
161246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetMinRightSideBearing(int32_t value) {
1625af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  InternalWriteData()->WriteShort(Offset::kMinRightSideBearing, value);
163464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
164464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
165246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::XMaxExtent() {
1665af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  return InternalReadData()->ReadShort(Offset::kXMaxExtent);
167464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
168464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
169246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetXMaxExtent(int32_t value) {
1705af34fd773f8cfee82321393504f558ddf67c628arthurhsu@google.com  InternalWriteData()->WriteShort(Offset::kXMaxExtent, value);
171464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
172464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
173246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::CaretSlopeRise() {
174246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return InternalReadData()->ReadUShort(Offset::kCaretSlopeRise);
175464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
176464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
177246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetCaretSlopeRise(int32_t value) {
178246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  InternalWriteData()->WriteUShort(Offset::kCaretSlopeRise, value);
179464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
180464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
181246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::CaretSlopeRun() {
182246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return InternalReadData()->ReadUShort(Offset::kCaretSlopeRun);
183464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
184464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
185246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetCaretSlopeRun(int32_t value) {
186246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  InternalWriteData()->WriteUShort(Offset::kCaretSlopeRun, value);
187464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
188464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
189246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::CaretOffset() {
190246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return InternalReadData()->ReadUShort(Offset::kCaretOffset);
191464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
192464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
193246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetCaretOffset(int32_t value) {
194246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  InternalWriteData()->WriteUShort(Offset::kCaretOffset, value);
195464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
196464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
197246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::MetricDataFormat() {
198246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return InternalReadData()->ReadUShort(Offset::kMetricDataFormat);
199464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
200464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
201246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetMetricDataFormat(int32_t value) {
202246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  InternalWriteData()->WriteUShort(Offset::kMetricDataFormat, value);
203464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
204464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
205246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comint32_t HorizontalHeaderTable::Builder::NumberOfHMetrics() {
206246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  return InternalReadData()->ReadUShort(Offset::kNumberOfHMetrics);
207464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
208464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
209246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.comvoid HorizontalHeaderTable::Builder::SetNumberOfHMetrics(int32_t value) {
210246300f7fab1f2539c3207ce5ec28cc355465be8arthurhsu@google.com  InternalWriteData()->WriteUShort(Offset::kNumberOfHMetrics, value);
211464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}
212464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com
213464987db923362e596195f9eebd34fc508c9a41arthurhsu@google.com}  // namespace sfntly
214