protected void CreateTableDirectory()
{
tableDirectory = new Dictionary<string,int[]>();
rf.Seek(directoryOffset);
int id = rf.ReadInt();
if (id != 0x00010000)
throw new DocumentException(MessageLocalization.GetComposedMessage("1.is.not.a.true.type.file", fileName));
int num_tables = rf.ReadUnsignedShort();
rf.SkipBytes(6);
for (int k = 0; k < num_tables; ++k) {
string tag = ReadStandardString(4);
int[] tableLocation = new int[3];
tableLocation[TABLE_CHECKSUM] = rf.ReadInt();
tableLocation[TABLE_OFFSET] = rf.ReadInt();
tableLocation[TABLE_LENGTH] = rf.ReadInt();
tableDirectory[tag] = tableLocation;
}
}