• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2012 Google Inc.
3  *
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the LICENSE file.
6  */
7 
8 #ifndef SkOTTable_maxp_TT_DEFINED
9 #define SkOTTable_maxp_TT_DEFINED
10 
11 #include "SkEndian.h"
12 #include "SkOTTableTypes.h"
13 #include "SkTypedEnum.h"
14 
15 #pragma pack(push, 1)
16 
17 struct SkOTTableMaximumProfile_TT {
18     SK_OT_Fixed version;
19     static const SK_OT_Fixed VERSION = SkTEndian_SwapBE32(0x00010000);
20 
21     SK_OT_USHORT numGlyphs;
22     SK_OT_USHORT maxPoints;
23     SK_OT_USHORT maxContours;
24     SK_OT_USHORT maxCompositePoints;
25     SK_OT_USHORT maxCompositeContours;
26     struct MaxZones {
27         SK_TYPED_ENUM(Value, SK_OT_USHORT,
28             ((DoesNotUseTwilightZone, SkTEndian_SwapBE16(1)))
29             ((UsesTwilightZone, SkTEndian_SwapBE16(2)))
30             SK_SEQ_END,
31         (value)SK_SEQ_END)
32     } maxZones;
33     SK_OT_USHORT maxTwilightPoints;
34     SK_OT_USHORT maxStorage;
35     SK_OT_USHORT maxFunctionDefs;
36     SK_OT_USHORT maxInstructionDefs;
37     SK_OT_USHORT maxStackElements;
38     SK_OT_USHORT maxSizeOfInstructions;
39     SK_OT_USHORT maxComponentElements;
40     SK_OT_USHORT maxComponentDepth;
41 };
42 
43 #pragma pack(pop)
44 
45 
46 #include <stddef.h>
47 static_assert(offsetof(SkOTTableMaximumProfile_TT, maxComponentDepth) == 30, "SkOTTableMaximumProfile_TT_maxComponentDepth_not_at_30");
48 static_assert(sizeof(SkOTTableMaximumProfile_TT) == 32, "sizeof_SkOTTableMaximumProfile_TT_not_32");
49 
50 #endif
51