LCOV - code coverage report
Current view: top level - gfx/ots/src - cmap.h (source / functions) Hit Total Coverage
Test: output.info Lines: 0 6 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 5 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : // 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             : 
      12             : namespace ots {
      13             : 
      14             : struct OpenTypeCMAPSubtableRange {
      15             :   uint32_t start_range;
      16             :   uint32_t end_range;
      17             :   uint32_t start_glyph_id;
      18             : };
      19             : 
      20             : struct OpenTypeCMAPSubtableVSRange {
      21             :   uint32_t unicode_value;
      22             :   uint8_t additional_count;
      23             : };
      24             : 
      25             : struct OpenTypeCMAPSubtableVSMapping {
      26             :   uint32_t unicode_value;
      27             :   uint16_t glyph_id;
      28             : };
      29             : 
      30           0 : struct OpenTypeCMAPSubtableVSRecord {
      31             :   uint32_t var_selector;
      32             :   uint32_t default_offset;
      33             :   uint32_t non_default_offset;
      34             :   std::vector<OpenTypeCMAPSubtableVSRange> ranges;
      35             :   std::vector<OpenTypeCMAPSubtableVSMapping> mappings;
      36             : };
      37             : 
      38           0 : struct OpenTypeCMAP {
      39           0 :   OpenTypeCMAP()
      40           0 :       : subtable_0_3_4_data(NULL),
      41             :         subtable_0_3_4_length(0),
      42             :         subtable_0_5_14_length(0),
      43             :         subtable_3_0_4_data(NULL),
      44             :         subtable_3_0_4_length(0),
      45             :         subtable_3_1_4_data(NULL),
      46           0 :         subtable_3_1_4_length(0) {
      47           0 :   }
      48             : 
      49             :   // Platform 0, Encoding 3, Format 4, Unicode BMP table.
      50             :   const uint8_t *subtable_0_3_4_data;
      51             :   size_t subtable_0_3_4_length;
      52             : 
      53             :   // Platform 0, Encoding 5, Format 14, Unicode Variation Sequence table.
      54             :   size_t subtable_0_5_14_length;
      55             :   std::vector<OpenTypeCMAPSubtableVSRecord> subtable_0_5_14;
      56             : 
      57             :   // Platform 3, Encoding 0, Format 4, MS Symbol table.
      58             :   const uint8_t *subtable_3_0_4_data;
      59             :   size_t subtable_3_0_4_length;
      60             :   // Platform 3, Encoding 1, Format 4, MS Unicode BMP table.
      61             :   const uint8_t *subtable_3_1_4_data;
      62             :   size_t subtable_3_1_4_length;
      63             : 
      64             :   // Platform 3, Encoding 10, Format 12, MS Unicode UCS-4 table.
      65             :   std::vector<OpenTypeCMAPSubtableRange> subtable_3_10_12;
      66             :   // Platform 3, Encoding 10, Format 13, MS UCS-4 Fallback table.
      67             :   std::vector<OpenTypeCMAPSubtableRange> subtable_3_10_13;
      68             :   // Platform 1, Encoding 0, Format 0, Mac Roman table.
      69             :   std::vector<uint8_t> subtable_1_0_0;
      70             : };
      71             : 
      72             : }  // namespace ots
      73             : 
      74             : #endif

Generated by: LCOV version 1.13