static void ExtractImportInfo(string test_results_path, Managers.TagIndex ti, TagInterface.TagGroup group, params string[] files) { int ti_dir_length = ti.Directory.Length; int group_length = group.Name.Length; foreach (string f in files) { var t = f.Substring(ti_dir_length); // remove tags dir t = t.Remove(t.Length - group_length - 1); // remove extension var tag_index = ti.Open(t, group); if (Managers.TagIndex.IsSentinel(tag_index)) { continue; } Assert.IsTrue(tag_index != Blam.DatumIndex.Null); var tagman = ti[tag_index]; var import_def = tagman.TagDefinition as Blam.Halo2.Tags.ITagImportInfo; ExtractImportInfo(import_def.GetImportInfo(), test_results_path); ti.Unload(tag_index); } }
public void BlamTestSystemTagIndex() { bool x64 = IntPtr.Size == 64; string k_hce = @"C:\Program Files" + (x64 ? " (x86)" : "") + @"\Microsoft Games\Halo Custom Edition\tags\"; string k_h2v = @"C:\Program Files" + (x64 ? " (x86)" : "") + @"\Microsoft Games\Halo 2 Map Editor\tags\"; Assert.IsTrue(System.IO.Directory.Exists(k_hce)); Assert.IsTrue(System.IO.Directory.Exists(k_h2v)); var ti = new Managers.TagIndex(BlamVersion.Halo1_CE, k_hce, false); ti.Dispose(); ti = new Managers.TagIndex(BlamVersion.Halo2_PC, k_h2v, false); ti.Dispose(); }
public void Close(Managers.TagIndex tag_index) { Assert.IsTrue(tag_index.Unload(TagIndex)); TagIndex = Blam.DatumIndex.Null; }
public void Open(Managers.TagIndex tag_index) { TagIndex = tag_index.Open(Name, Group, IO.ITagStreamFlags.LoadDependents); Assert.IsFalse(TagIndex.IsNull); }
public void Open(Managers.TagIndex tag_index) { TagIndex = tag_index.Open(Name, Group, IO.ITagStreamFlags.LoadDependents); Assert.IsTrue(BlamLib.Managers.TagIndex.IsValid(TagIndex)); }