1ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru/*
2ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru *
359d709d503bab6e2b61931737e662dd293b40578ccornelius * (C) Copyright IBM Corp. 1998 - 2013 - All Rights Reserved
4ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru *
5ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru */
6ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
7ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#include "LETypes.h"
8ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#include "OpenTypeTables.h"
9ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#include "GlyphDefinitionTables.h"
10ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#include "LESwaps.h"
11ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
12ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste QueruU_NAMESPACE_BEGIN
13ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
1459d709d503bab6e2b61931737e662dd293b40578ccorneliusconst LEReferenceTo<GlyphClassDefinitionTable>
1559d709d503bab6e2b61931737e662dd293b40578ccorneliusGlyphDefinitionTableHeader::getGlyphClassDefinitionTable(const LEReferenceTo<GlyphDefinitionTableHeader>& base,
1659d709d503bab6e2b61931737e662dd293b40578ccornelius                                                         LEErrorCode &success) const
17ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru{
1859d709d503bab6e2b61931737e662dd293b40578ccornelius  if(LE_FAILURE(success)) return LEReferenceTo<GlyphClassDefinitionTable>();
1959d709d503bab6e2b61931737e662dd293b40578ccornelius  return LEReferenceTo<GlyphClassDefinitionTable>(base, success, SWAPW(glyphClassDefOffset));
20ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru}
21ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
2259d709d503bab6e2b61931737e662dd293b40578ccorneliusconst LEReferenceTo<AttachmentListTable>
2359d709d503bab6e2b61931737e662dd293b40578ccorneliusGlyphDefinitionTableHeader::getAttachmentListTable(const LEReferenceTo<GlyphDefinitionTableHeader>& base,
2459d709d503bab6e2b61931737e662dd293b40578ccornelius                                                         LEErrorCode &success) const
25ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru{
2659d709d503bab6e2b61931737e662dd293b40578ccornelius    if(LE_FAILURE(success)) return LEReferenceTo<AttachmentListTable>();
2759d709d503bab6e2b61931737e662dd293b40578ccornelius    return LEReferenceTo<AttachmentListTable>(base, success, SWAPW(attachListOffset));
28ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru}
29ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
3059d709d503bab6e2b61931737e662dd293b40578ccorneliusconst LEReferenceTo<LigatureCaretListTable>
3159d709d503bab6e2b61931737e662dd293b40578ccorneliusGlyphDefinitionTableHeader::getLigatureCaretListTable(const LEReferenceTo<GlyphDefinitionTableHeader>& base,
3259d709d503bab6e2b61931737e662dd293b40578ccornelius                                                         LEErrorCode &success) const
33ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru{
3459d709d503bab6e2b61931737e662dd293b40578ccornelius    if(LE_FAILURE(success)) return LEReferenceTo<LigatureCaretListTable>();
3559d709d503bab6e2b61931737e662dd293b40578ccornelius    return LEReferenceTo<LigatureCaretListTable>(base, success, SWAPW(ligCaretListOffset));
36ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru}
37ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
3859d709d503bab6e2b61931737e662dd293b40578ccorneliusconst LEReferenceTo<MarkAttachClassDefinitionTable>
3959d709d503bab6e2b61931737e662dd293b40578ccorneliusGlyphDefinitionTableHeader::getMarkAttachClassDefinitionTable(const LEReferenceTo<GlyphDefinitionTableHeader>& base,
4059d709d503bab6e2b61931737e662dd293b40578ccornelius                                                         LEErrorCode &success) const
41ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru{
4259d709d503bab6e2b61931737e662dd293b40578ccornelius    if(LE_FAILURE(success)) return LEReferenceTo<MarkAttachClassDefinitionTable>();
4359d709d503bab6e2b61931737e662dd293b40578ccornelius    return LEReferenceTo<MarkAttachClassDefinitionTable>(base, success, SWAPW(MarkAttachClassDefOffset));
44ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru}
45ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
46ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste QueruU_NAMESPACE_END
47