1/*
2 *
3 * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved
4 *
5 */
6
7#ifndef __MARKTOMARKPOSITIONINGSUBTABLES_H
8#define __MARKTOMARKPOSITIONINGSUBTABLES_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 MarkToMarkPositioningSubtable : AttachmentPositioningSubtable
25{
26  le_int32   process(const LETableReference &base, GlyphIterator *glyphIterator, const LEFontInstance *fontInstance, LEErrorCode &success) const;
27    LEGlyphID  findMark2Glyph(GlyphIterator *glyphIterator) const;
28};
29
30struct Mark2Record
31{
32    Offset mark2AnchorTableOffsetArray[ANY_NUMBER];
33};
34LE_VAR_ARRAY(Mark2Record, mark2AnchorTableOffsetArray)
35
36struct Mark2Array
37{
38    le_uint16 mark2RecordCount;
39    Mark2Record mark2RecordArray[ANY_NUMBER];
40};
41LE_VAR_ARRAY(Mark2Array, mark2RecordArray)
42
43U_NAMESPACE_END
44#endif
45
46