LCOV - code coverage report
Current view: top level - gfx/sfntly/cpp/src/sfntly/table/core - font_header_table.cc (source / functions) Hit Total Coverage
Test: output.info Lines: 0 145 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 65 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*
       2             :  * Copyright 2011 Google Inc. All Rights Reserved.
       3             :  *
       4             :  * Licensed under the Apache License, Version 2.0 (the "License");
       5             :  * you may not use this file except in compliance with the License.
       6             :  * You may obtain a copy of the License at
       7             :  *
       8             :  *      http://www.apache.org/licenses/LICENSE-2.0
       9             :  *
      10             :  * Unless required by applicable law or agreed to in writing, software
      11             :  * distributed under the License is distributed on an "AS IS" BASIS,
      12             :  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      13             :  * See the License for the specific language governing permissions and
      14             :  * limitations under the License.
      15             :  */
      16             : 
      17             : #include "sfntly/table/core/font_header_table.h"
      18             : 
      19             : namespace sfntly {
      20             : /******************************************************************************
      21             :  * FontHeaderTable class
      22             :  ******************************************************************************/
      23           0 : FontHeaderTable::~FontHeaderTable() {}
      24             : 
      25           0 : int32_t FontHeaderTable::TableVersion() {
      26           0 :   return data_->ReadFixed(Offset::kTableVersion);
      27             : }
      28             : 
      29           0 : int32_t FontHeaderTable::FontRevision() {
      30           0 :   return data_->ReadFixed(Offset::kFontRevision);
      31             : }
      32             : 
      33           0 : int64_t FontHeaderTable::ChecksumAdjustment() {
      34           0 :   return data_->ReadULong(Offset::kCheckSumAdjustment);
      35             : }
      36             : 
      37           0 : int64_t FontHeaderTable::MagicNumber() {
      38           0 :   return data_->ReadULong(Offset::kMagicNumber);
      39             : }
      40             : 
      41           0 : int32_t FontHeaderTable::FlagsAsInt() {
      42           0 :   return data_->ReadUShort(Offset::kFlags);
      43             : }
      44             : 
      45           0 : int32_t FontHeaderTable::UnitsPerEm() {
      46           0 :   return data_->ReadUShort(Offset::kUnitsPerEm);
      47             : }
      48             : 
      49           0 : int64_t FontHeaderTable::Created() {
      50           0 :   return data_->ReadDateTimeAsLong(Offset::kCreated);
      51             : }
      52             : 
      53           0 : int64_t FontHeaderTable::Modified() {
      54           0 :   return data_->ReadDateTimeAsLong(Offset::kModified);
      55             : }
      56             : 
      57           0 : int32_t FontHeaderTable::XMin() {
      58           0 :   return data_->ReadUShort(Offset::kXMin);
      59             : }
      60             : 
      61           0 : int32_t FontHeaderTable::YMin() {
      62           0 :   return data_->ReadUShort(Offset::kYMin);
      63             : }
      64             : 
      65           0 : int32_t FontHeaderTable::XMax() {
      66           0 :   return data_->ReadUShort(Offset::kXMax);
      67             : }
      68             : 
      69           0 : int32_t FontHeaderTable::YMax() {
      70           0 :   return data_->ReadUShort(Offset::kYMax);
      71             : }
      72             : 
      73           0 : int32_t FontHeaderTable::MacStyleAsInt() {
      74           0 :   return data_->ReadUShort(Offset::kMacStyle);
      75             : }
      76             : 
      77           0 : int32_t FontHeaderTable::LowestRecPPEM() {
      78           0 :   return data_->ReadUShort(Offset::kLowestRecPPEM);
      79             : }
      80             : 
      81           0 : int32_t FontHeaderTable::FontDirectionHint() {
      82           0 :   return data_->ReadShort(Offset::kFontDirectionHint);
      83             : }
      84             : 
      85           0 : int32_t FontHeaderTable::IndexToLocFormat() {
      86           0 :   return data_->ReadShort(Offset::kIndexToLocFormat);
      87             : }
      88             : 
      89           0 : int32_t FontHeaderTable::GlyphDataFormat() {
      90           0 :   return data_->ReadShort(Offset::kGlyphDataFormat);
      91             : }
      92             : 
      93           0 : FontHeaderTable::FontHeaderTable(Header* header, ReadableFontData* data)
      94           0 :     : Table(header, data) {
      95           0 :   IntegerList checksum_ranges;
      96           0 :   checksum_ranges.push_back(0);
      97           0 :   checksum_ranges.push_back(Offset::kCheckSumAdjustment);
      98           0 :   checksum_ranges.push_back(Offset::kMagicNumber);
      99           0 :   data_->SetCheckSumRanges(checksum_ranges);
     100           0 : }
     101             : 
     102             : /******************************************************************************
     103             :  * FontHeaderTable::Builder class
     104             :  ******************************************************************************/
     105           0 : FontHeaderTable::Builder::Builder(Header* header, WritableFontData* data)
     106           0 :     : TableBasedTableBuilder(header, data) {
     107           0 : }
     108             : 
     109           0 : FontHeaderTable::Builder::Builder(Header* header, ReadableFontData* data)
     110           0 :     : TableBasedTableBuilder(header, data) {
     111           0 : }
     112             : 
     113           0 : FontHeaderTable::Builder::~Builder() {}
     114             : 
     115           0 : CALLER_ATTACH FontDataTable* FontHeaderTable::Builder::SubBuildTable(
     116             :     ReadableFontData* data) {
     117           0 :   FontDataTablePtr table = new FontHeaderTable(header(), data);
     118           0 :   return table.Detach();
     119             : }
     120             : 
     121           0 : int32_t FontHeaderTable::Builder::TableVersion() {
     122           0 :   return down_cast<FontHeaderTable*>(GetTable())->TableVersion();
     123             : }
     124             : 
     125           0 : void FontHeaderTable::Builder::SetTableVersion(int32_t version) {
     126           0 :   InternalWriteData()->WriteFixed(Offset::kTableVersion, version);
     127           0 : }
     128             : 
     129           0 : int32_t FontHeaderTable::Builder::FontRevision() {
     130           0 :   return down_cast<FontHeaderTable*>(GetTable())->FontRevision();
     131             : }
     132             : 
     133           0 : void FontHeaderTable::Builder::SetFontRevision(int32_t revision) {
     134           0 :   InternalWriteData()->WriteFixed(Offset::kFontRevision, revision);
     135           0 : }
     136             : 
     137           0 : int64_t FontHeaderTable::Builder::ChecksumAdjustment() {
     138           0 :   return down_cast<FontHeaderTable*>(GetTable())->ChecksumAdjustment();
     139             : }
     140             : 
     141           0 : void FontHeaderTable::Builder::SetChecksumAdjustment(int64_t adjustment) {
     142           0 :   InternalWriteData()->WriteULong(Offset::kCheckSumAdjustment, adjustment);
     143           0 : }
     144             : 
     145           0 : int64_t FontHeaderTable::Builder::MagicNumber() {
     146           0 :   return down_cast<FontHeaderTable*>(GetTable())->MagicNumber();
     147             : }
     148             : 
     149           0 : void FontHeaderTable::Builder::SetMagicNumber(int64_t magic_number) {
     150           0 :   InternalWriteData()->WriteULong(Offset::kMagicNumber, magic_number);
     151           0 : }
     152             : 
     153           0 : int32_t FontHeaderTable::Builder::FlagsAsInt() {
     154           0 :   return down_cast<FontHeaderTable*>(GetTable())->FlagsAsInt();
     155             : }
     156             : 
     157           0 : void FontHeaderTable::Builder::SetFlagsAsInt(int32_t flags) {
     158           0 :   InternalWriteData()->WriteUShort(Offset::kFlags, flags);
     159           0 : }
     160             : 
     161           0 : int32_t FontHeaderTable::Builder::UnitsPerEm() {
     162           0 :   return down_cast<FontHeaderTable*>(GetTable())->UnitsPerEm();
     163             : }
     164             : 
     165           0 : void FontHeaderTable::Builder::SetUnitsPerEm(int32_t units) {
     166           0 :   InternalWriteData()->WriteUShort(Offset::kUnitsPerEm, units);
     167           0 : }
     168             : 
     169           0 : int64_t FontHeaderTable::Builder::Created() {
     170           0 :   return down_cast<FontHeaderTable*>(GetTable())->Created();
     171             : }
     172             : 
     173           0 : void FontHeaderTable::Builder::SetCreated(int64_t date) {
     174           0 :   InternalWriteData()->WriteDateTime(Offset::kCreated, date);
     175           0 : }
     176             : 
     177           0 : int64_t FontHeaderTable::Builder::Modified() {
     178           0 :   return down_cast<FontHeaderTable*>(GetTable())->Modified();
     179             : }
     180             : 
     181           0 : void FontHeaderTable::Builder::SetModified(int64_t date) {
     182           0 :   InternalWriteData()->WriteDateTime(Offset::kModified, date);
     183           0 : }
     184             : 
     185           0 : int32_t FontHeaderTable::Builder::XMin() {
     186           0 :   return down_cast<FontHeaderTable*>(GetTable())->XMin();
     187             : }
     188             : 
     189           0 : void FontHeaderTable::Builder::SetXMin(int32_t xmin) {
     190           0 :   InternalWriteData()->WriteShort(Offset::kXMin, xmin);
     191           0 : }
     192             : 
     193           0 : int32_t FontHeaderTable::Builder::YMin() {
     194           0 :   return down_cast<FontHeaderTable*>(GetTable())->YMin();
     195             : }
     196             : 
     197           0 : void FontHeaderTable::Builder::SetYMin(int32_t ymin) {
     198           0 :   InternalWriteData()->WriteShort(Offset::kYMin, ymin);
     199           0 : }
     200             : 
     201           0 : int32_t FontHeaderTable::Builder::XMax() {
     202           0 :   return down_cast<FontHeaderTable*>(GetTable())->XMax();
     203             : }
     204             : 
     205           0 : void FontHeaderTable::Builder::SetXMax(int32_t xmax) {
     206           0 :   InternalWriteData()->WriteShort(Offset::kXMax, xmax);
     207           0 : }
     208             : 
     209           0 : int32_t FontHeaderTable::Builder::YMax() {
     210           0 :   return down_cast<FontHeaderTable*>(GetTable())->YMax();
     211             : }
     212             : 
     213           0 : void FontHeaderTable::Builder::SetYMax(int32_t ymax) {
     214           0 :   InternalWriteData()->WriteShort(Offset::kYMax, ymax);
     215           0 : }
     216             : 
     217           0 : int32_t FontHeaderTable::Builder::MacStyleAsInt() {
     218           0 :   return down_cast<FontHeaderTable*>(GetTable())->MacStyleAsInt();
     219             : }
     220             : 
     221           0 : void FontHeaderTable::Builder::SetMacStyleAsInt(int32_t style) {
     222           0 :   InternalWriteData()->WriteUShort(Offset::kMacStyle, style);
     223           0 : }
     224             : 
     225           0 : int32_t FontHeaderTable::Builder::LowestRecPPEM() {
     226           0 :   return down_cast<FontHeaderTable*>(GetTable())->LowestRecPPEM();
     227             : }
     228             : 
     229           0 : void FontHeaderTable::Builder::SetLowestRecPPEM(int32_t size) {
     230           0 :   InternalWriteData()->WriteUShort(Offset::kLowestRecPPEM, size);
     231           0 : }
     232             : 
     233           0 : int32_t FontHeaderTable::Builder::FontDirectionHint() {
     234           0 :   return down_cast<FontHeaderTable*>(GetTable())->FontDirectionHint();
     235             : }
     236             : 
     237           0 : void FontHeaderTable::Builder::SetFontDirectionHint(int32_t hint) {
     238           0 :   InternalWriteData()->WriteShort(Offset::kFontDirectionHint, hint);
     239           0 : }
     240             : 
     241           0 : int32_t FontHeaderTable::Builder::IndexToLocFormat() {
     242           0 :   Table* table = GetTable();
     243           0 :   if (!table)
     244           0 :     return IndexToLocFormat::kInvalidOffset;
     245           0 :   return down_cast<FontHeaderTable*>(table)->IndexToLocFormat();
     246             : }
     247             : 
     248           0 : void FontHeaderTable::Builder::SetIndexToLocFormat(int32_t format) {
     249           0 :   InternalWriteData()->WriteShort(Offset::kIndexToLocFormat, format);
     250           0 : }
     251             : 
     252           0 : int32_t FontHeaderTable::Builder::GlyphDataFormat() {
     253           0 :   return down_cast<FontHeaderTable*>(GetTable())->GlyphDataFormat();
     254             : }
     255             : 
     256           0 : void FontHeaderTable::Builder::SetGlyphDataFormat(int32_t format) {
     257           0 :   InternalWriteData()->WriteShort(Offset::kGlyphDataFormat, format);
     258           0 : }
     259             : 
     260             : CALLER_ATTACH FontHeaderTable::Builder*
     261           0 :     FontHeaderTable::Builder::CreateBuilder(Header* header,
     262             :                                             WritableFontData* data) {
     263           0 :   Ptr<FontHeaderTable::Builder> builder;
     264           0 :   builder = new FontHeaderTable::Builder(header, data);
     265           0 :   return builder.Detach();
     266             : }
     267             : 
     268             : }  // namespace sfntly

Generated by: LCOV version 1.13