2 *******************************************************************************
\r
3 * Copyright (C) 1998-2004, International Business Machines Corporation and *
\r
4 * others. All Rights Reserved. *
\r
5 *******************************************************************************
\r
7 * Created on Dec 3, 2003
\r
9 *******************************************************************************
\r
11 package com.ibm.icu.dev.tool.layout;
\r
13 public class LookupList
\r
15 private Lookup[] lookups;
\r
16 private int lookupCount;
\r
20 lookups = new Lookup[10];
\r
24 public int addLookup(Lookup lookup)
\r
26 if (lookupCount >= lookups.length) {
\r
27 Lookup[] newLookups = new Lookup[lookups.length + 5];
\r
29 System.arraycopy(lookups, 0, newLookups, 0, lookups.length);
\r
30 lookups = newLookups;
\r
33 lookups[lookupCount] = lookup;
\r
35 return lookupCount++;
\r
38 public void writeLookupList(OpenTypeTableWriter writer)
\r
40 System.out.println("writing lookup list...");
\r
42 int lookupListBase = writer.getOutputIndex();
\r
44 writer.writeData(lookupCount);
\r
46 int lookupOffset = writer.getOutputIndex();
\r
48 for (int i = 0; i < lookupCount; i += 1) {
\r
49 writer.writeData(0); // Offset to lookup (fixed later);
\r
52 for (int i = 0; i < lookupCount; i += 1) {
\r
53 writer.fixOffset(lookupOffset++, lookupListBase);
\r
54 lookups[i].writeLookup(writer);
\r