chromium/third_party/ots/src/src/math.cc

// Copyright (c) 2014-2017 The OTS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// We use an underscore to avoid confusion with the standard math.h library.
#include "math_.h"

#include <limits>
#include <vector>

#include "layout.h"
#include "maxp.h"

// MATH - The MATH Table
// http://www.microsoft.com/typography/otspec/math.htm

namespace {

// The size of MATH header.
// Version
// MathConstants
// MathGlyphInfo
// MathVariants
const unsigned kMathHeaderSize =;

// The size of the MathGlyphInfo header.
// MathItalicsCorrectionInfo
// MathTopAccentAttachment
// ExtendedShapeCoverage
// MathKernInfo
const unsigned kMathGlyphInfoHeaderSize =;

// The size of the MathValueRecord.
// Value
// DeviceTable
const unsigned kMathValueRecordSize =;

// The size of the GlyphPartRecord.
// glyph
// StartConnectorLength
// EndConnectorLength
// FullAdvance
// PartFlags
const unsigned kGlyphPartRecordSize =;

}  // namespace

namespace ots {

// Shared Table: MathValueRecord

bool OpenTypeMATH::ParseMathValueRecord(ots::Buffer* subtable,
                                        const uint8_t *data,
                                        const size_t length) {}

bool OpenTypeMATH::ParseMathConstantsTable(const uint8_t *data,
                                           size_t length) {}

bool OpenTypeMATH::ParseMathValueRecordSequenceForGlyphs(ots::Buffer* subtable,
                                                         const uint8_t *data,
                                                         const size_t length,
                                                         const uint16_t num_glyphs) {}

bool OpenTypeMATH::ParseMathItalicsCorrectionInfoTable(const uint8_t *data,
                                                       size_t length,
                                                       const uint16_t num_glyphs) {}

bool OpenTypeMATH::ParseMathTopAccentAttachmentTable(const uint8_t *data,
                                                     size_t length,
                                                     const uint16_t num_glyphs) {}

bool OpenTypeMATH::ParseMathKernTable(const uint8_t *data, size_t length) {}

bool OpenTypeMATH::ParseMathKernInfoTable(const uint8_t *data,
                                          size_t length,
                                          const uint16_t num_glyphs) {}

bool OpenTypeMATH::ParseMathGlyphInfoTable(const uint8_t *data,
                                           size_t length,
                                           const uint16_t num_glyphs) {}

bool OpenTypeMATH::ParseGlyphAssemblyTable(const uint8_t *data,
                                           size_t length,
                                           const uint16_t num_glyphs) {}

bool OpenTypeMATH::ParseMathGlyphConstructionTable(const uint8_t *data,
                                                   size_t length,
                                                   const uint16_t num_glyphs) {}

bool OpenTypeMATH::ParseMathGlyphConstructionSequence(ots::Buffer* subtable,
                                                      const uint8_t *data,
                                                      size_t length,
                                                      const uint16_t num_glyphs,
                                                      uint16_t offset_coverage,
                                                      uint16_t glyph_count,
                                                      const unsigned sequence_end) {}

bool OpenTypeMATH::ParseMathVariantsTable(const uint8_t *data,
                                          size_t length,
                                          const uint16_t num_glyphs) {}

bool OpenTypeMATH::Parse(const uint8_t *data, size_t length) {}

bool OpenTypeMATH::Serialize(OTSStream *out) {}

bool OpenTypeMATH::ShouldSerialize() {}

}  // namespace ots