using System; using System.Collections.Generic; namespace Oni.Metadata { internal class OniMacMetadata : InstanceMetadata { // // Binary Data template // private static MetaStruct bina = new MetaStruct("BINAInstance", new Field(MetaType.Int32, "DataSize"), new BinaryPartField(MetaType.SepOffset, "DataOffset", "DataSize") ); // // Texture Map template // private static MetaStruct txmp = new MetaStruct("TXMPInstance", new Field(MetaType.Padding(128)), new Field(MetaType.Enum(), "Flags"), new Field(MetaType.Int16, "Width"), new Field(MetaType.Int16, "Height"), new Field(MetaType.Enum(), "Format"), new Field(MetaType.Pointer(TemplateTag.TXAN), "Animation"), new Field(MetaType.Pointer(TemplateTag.TXMP), "EnvMap"), new Field(MetaType.Padding(4)), new BinaryPartField(MetaType.SepOffset, "DataOffset"), new Field(MetaType.Padding(8)) ); // // Oni Sound Binary Data template // private static MetaStruct osbd = new MetaStruct("OSBDInstance", new Field(MetaType.Int32, "DataSize"), new BinaryPartField(MetaType.SepOffset, "DataOffset", "DataSize") ); // // Sound Data template // private static MetaStruct sndd = new MetaStruct("SNDDInstance", new Field(MetaType.Int32, "Flags"), new Field(MetaType.Int32, "Duration"), new Field(MetaType.Int32, "DataSize"), new BinaryPartField(MetaType.RawOffset, "DataOffset", "DataSize") ); protected override void InitializeTemplates(IList