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 
22 U_NAMESPACE_BEGIN
23 
24 struct 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 
30 struct Mark2Record
31 {
32     Offset mark2AnchorTableOffsetArray[ANY_NUMBER];
33 };
34 LE_VAR_ARRAY(Mark2Record, mark2AnchorTableOffsetArray)
35 
36 struct Mark2Array
37 {
38     le_uint16 mark2RecordCount;
39     Mark2Record mark2RecordArray[ANY_NUMBER];
40 };
41 LE_VAR_ARRAY(Mark2Array, mark2RecordArray)
42 
43 U_NAMESPACE_END
44 #endif
45 
46