/// <summary> /// Initializes a new instance of the <see cref="DataBlockBuilder" /> class. /// </summary> /// <param name="reader">The stream to read from.</param> /// <param name="tag">The tag to load data blocks for.</param> /// <param name="cacheFile">The cache file.</param> /// <param name="buildInfo">The build info for the cache file.</param> public DataBlockBuilder(IReader reader, ITag tag, ICacheFile cacheFile, EngineDescription buildInfo) { _reader = reader; _tag = tag; _cacheFile = cacheFile; _languageCache = new CachedLanguagePackLoader(_cacheFile.Languages); _tagRefLayout = buildInfo.Layouts.GetLayout("tag reference"); _tagBlockLayout = buildInfo.Layouts.GetLayout("tag block"); _dataRefLayout = buildInfo.Layouts.GetLayout("data reference"); if (buildInfo.Layouts.HasLayout("sound")) { _soundLayout = buildInfo.Layouts.GetLayout("sound"); } DataBlocks = new List <DataBlock>(); ReferencedTags = new HashSet <DatumIndex>(); ReferencedResources = new HashSet <DatumIndex>(); ReferencedSoundCodecs = new HashSet <int>(); ReferencedSoundPitchRanges = new HashSet <int>(); ReferencedSoundLanguagePitchRanges = new HashSet <int>(); ReferencedSoundPlaybacks = new HashSet <int>(); ReferencedSoundScales = new HashSet <int>(); ReferencedSoundPromotions = new HashSet <int>(); ReferencedSoundCustomPlaybacks = new HashSet <int>(); ReferencedSoundExtraInfo = new HashSet <int>(); }
public TagContainerInjector(ICacheFile cacheFile, TagContainer container) { _cacheFile = cacheFile; _languageCache = new CachedLanguagePackLoader(cacheFile.Languages); _container = container; _keepSound = false; _injectRaw = false; _findExistingPages = false; }
public TagContainerInjector(ICacheFile cacheFile, TagContainer container, bool keepsnd, bool injectraw, bool findexisting, bool renameshaders) { _cacheFile = cacheFile; _languageCache = new CachedLanguagePackLoader(cacheFile.Languages); _container = container; _keepSound = keepsnd; _injectRaw = injectraw; _findExistingPages = findexisting; _renameShaders = renameshaders; }
public TagContainerInjector(ICacheFile cacheFile, TagContainer container) { _cacheFile = cacheFile; _languageCache = new CachedLanguagePackLoader(cacheFile.Languages); _container = container; _keepSound = false; _injectRaw = false; _findExistingPages = false; _renameShaders = false; _dupeReuseSoundGestalt = false; _dupeReuseRawPages = false; }
/// <summary> /// Initializes a new instance of the <see cref="DataBlockBuilder" /> class. /// </summary> /// <param name="reader">The stream to read from.</param> /// <param name="tag">The tag to load data blocks for.</param> /// <param name="cacheFile">The cache file.</param> /// <param name="buildInfo">The build info for the cache file.</param> public DataBlockBuilder(IReader reader, ITag tag, ICacheFile cacheFile, EngineDescription buildInfo) { _reader = reader; _tag = tag; _cacheFile = cacheFile; _languageCache = new CachedLanguagePackLoader(_cacheFile.Languages); _tagRefLayout = buildInfo.Layouts.GetLayout("tag reference"); _tagBlockLayout = buildInfo.Layouts.GetLayout("tag block"); _dataRefLayout = buildInfo.Layouts.GetLayout("data reference"); DataBlocks = new List <DataBlock>(); ReferencedTags = new HashSet <DatumIndex>(); ReferencedResources = new HashSet <DatumIndex>(); }
/// <summary> /// Constructor for use with duplication /// </summary> public TagContainerInjector(ICacheFile cacheFile, TagContainer container, EngineDescription buildInfo, bool dupeSoundGestalt) { _cacheFile = cacheFile; _languageCache = new CachedLanguagePackLoader(cacheFile.Languages); _container = container; _keepSound = true; _injectRaw = false; _findExistingPages = true; _renameShaders = false; _dupeReuseRawPages = !buildInfo.UsesRawHashes; _dupeReuseSoundGestalt = !dupeSoundGestalt; if (buildInfo.Layouts.HasLayout("sound")) { _soundLayout = buildInfo.Layouts.GetLayout("sound"); } }
/// <summary> /// Constructor for use with injection /// </summary> public TagContainerInjector(ICacheFile cacheFile, TagContainer container, EngineDescription buildInfo, bool keepsnd, bool injectraw, bool findexisting, bool renameshaders) { _cacheFile = cacheFile; _languageCache = new CachedLanguagePackLoader(cacheFile.Languages); _container = container; _keepSound = keepsnd; _injectRaw = injectraw; _findExistingPages = findexisting; _renameShaders = renameshaders; _dupeReuseSoundGestalt = false; _dupeReuseRawPages = false; if (buildInfo.Layouts.HasLayout("sound")) { _soundLayout = buildInfo.Layouts.GetLayout("sound"); } }
public TagContainerInjector(ICacheFile cacheFile, TagContainer container) { _cacheFile = cacheFile; _languageCache = new CachedLanguagePackLoader(cacheFile.Languages); _container = container; }