| /* |
| * Copyright 2012 Google Inc. |
| * |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| #ifndef SkOTTable_maxp_TT_DEFINED |
| #define SkOTTable_maxp_TT_DEFINED |
| |
| #include "SkEndian.h" |
| #include "SkOTTableTypes.h" |
| #include "SkTypedEnum.h" |
| |
| #pragma pack(push, 1) |
| |
| struct SkOTTableMaximumProfile_TT { |
| SK_OT_Fixed version; |
| static const SK_OT_Fixed VERSION = SkTEndian_SwapBE32(0x00010000); |
| |
| SK_OT_USHORT numGlyphs; |
| SK_OT_USHORT maxPoints; |
| SK_OT_USHORT maxContours; |
| SK_OT_USHORT maxCompositePoints; |
| SK_OT_USHORT maxCompositeContours; |
| struct MaxZones { |
| SK_TYPED_ENUM(Value, SK_OT_USHORT, |
| ((DoesNotUseTwilightZone, SkTEndian_SwapBE16(1))) |
| ((UsesTwilightZone, SkTEndian_SwapBE16(2))) |
| SK_SEQ_END, |
| (value)SK_SEQ_END) |
| } maxZones; |
| SK_OT_USHORT maxTwilightPoints; |
| SK_OT_USHORT maxStorage; |
| SK_OT_USHORT maxFunctionDefs; |
| SK_OT_USHORT maxInstructionDefs; |
| SK_OT_USHORT maxStackElements; |
| SK_OT_USHORT maxSizeOfInstructions; |
| SK_OT_USHORT maxComponentElements; |
| SK_OT_USHORT maxComponentDepth; |
| }; |
| |
| #pragma pack(pop) |
| |
| |
| #include <stddef.h> |
| static_assert(offsetof(SkOTTableMaximumProfile_TT, maxComponentDepth) == 30, "SkOTTableMaximumProfile_TT_maxComponentDepth_not_at_30"); |
| static_assert(sizeof(SkOTTableMaximumProfile_TT) == 32, "sizeof_SkOTTableMaximumProfile_TT_not_32"); |
| |
| #endif |