1/*
2 *
3 * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved
4 *
5 */
6
7#ifndef __MARKTOLIGATUREPOSITIONINGSUBTABLES_H
8#define __MARKTOLIGATUREPOSITIONINGSUBTABLES_H
9
10/**
11 * \file
12 * \internal
13 */
14
15#include "LETypes.h"
16#include "LEFontInstance.h"
17#include "OpenTypeTables.h"
18#include "GlyphPositioningTables.h"
19#include "AttachmentPosnSubtables.h"
20#include "GlyphIterator.h"
21
22U_NAMESPACE_BEGIN
23
24struct MarkToLigaturePositioningSubtable : AttachmentPositioningSubtable
25{
26    le_int32   process(GlyphIterator *glyphIterator, const LEFontInstance *fontInstance) const;
27    LEGlyphID  findLigatureGlyph(GlyphIterator *glyphIterator) const;
28};
29
30struct ComponentRecord
31{
32    Offset ligatureAnchorTableOffsetArray[ANY_NUMBER];
33};
34
35struct LigatureAttachTable
36{
37    le_uint16 componentCount;
38    ComponentRecord componentRecordArray[ANY_NUMBER];
39};
40
41struct LigatureArray
42{
43    le_uint16 ligatureCount;
44    Offset ligatureAttachTableOffsetArray[ANY_NUMBER];
45};
46
47U_NAMESPACE_END
48#endif
49
50