private void LoadResourceManager(IReader reader) { ITag zoneTag = _tags.FindTagByClass("zone"); ITag playTag = _tags.FindTagByClass("play"); bool haveZoneLayout = _buildInfo.Layouts.HasLayout("resource gestalt"); bool havePlayLayout = _buildInfo.Layouts.HasLayout("resource layout table"); bool canLoadZone = (zoneTag != null && haveZoneLayout); bool canLoadPlay = (playTag != null && havePlayLayout); if (canLoadZone || canLoadPlay) { FourthGenResourceGestalt gestalt = null; FourthGenResourceLayoutTable layoutTable = null; if (canLoadZone) { gestalt = new FourthGenResourceGestalt(reader, zoneTag, MetaArea, Allocator, StringIDs, _buildInfo); } if (canLoadPlay) { layoutTable = new FourthGenResourceLayoutTable(playTag, MetaArea, Allocator, _buildInfo); } _resources = new FourthGenResourceManager(gestalt, layoutTable, _tags, MetaArea, Allocator, _buildInfo); } }
/// <summary> /// Initializes a new instance of the <see cref="FourthGenResourceManager" /> class. /// </summary> /// <param name="gestalt">The cache file's resource gestalt.</param> /// <param name="layoutTable">The cache file's resource layout table.</param> /// <param name="tags">The cache file's tag table.</param> /// <param name="metaArea">The cache file's meta area.</param> /// <param name="allocator">The cache file's tag data allocator.</param> /// <param name="buildInfo">The cache file's build information.</param> public FourthGenResourceManager(FourthGenResourceGestalt gestalt, FourthGenResourceLayoutTable layoutTable, TagTable tags, FileSegmentGroup metaArea, MetaAllocator allocator, EngineDescription buildInfo) { _gestalt = gestalt; _layoutTable = layoutTable; _tags = tags; _metaArea = metaArea; _allocator = allocator; _buildInfo = buildInfo; }