MoltenMercury/libWyvernzora/IO/Packaging/PackageBase.cs
(开头部分) 7KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/*===================================================
* LibHex2\\IO\\Packaging\\PackageBase.cs
* Base class for all the archive managing classes.
* -------------------------------------------------------------------------------
* Copyright (C) Aragorn Wyvernzora 2011
* MODIFIED FROM Firefly.Core.Packaging.PackageBase class
* ORIGINALLY WRITTEN BY F.R.C IN 2010
* -------------------------------------------------------------------------------
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* ===================================================
*/
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
namespace libWyvernzora.IO.Packaging
{
public abstract class ReadonlyPackageBase : IDisposable
{
/// <summary>
/// Archive Base Class
/// </summary>
protected ExStreamBase m_bs;
protected List<PackageEntry> m_entries = new List<PackageEntry>();
protected Dictionary<PackageEntry, Int32> m_map = new Dictionary<PackageEntry, int>();
protected ReadonlyPackageBase() { }
protected ReadonlyPackageBase(ExStreamBase bs)
{
m_bs = bs;
}
protected PackageEntry m_root = new PackageEntry("", PackageEntry.EntryType.Directory, -1, 0);
public PackageEntry Root
{ get { return m_root; } }
public IEnumerable<PackageEntry> Entries
{ get { return m_entries; } }
public Int32 EntriesCount { get { return m_entries.Count; } }
protected virtual void PushEntry(PackageEntry f)
{
PushEntry(f, m_root);
}
protected virtual void PushEntry(PackageEntry f, PackageEntry dir)
{
后面还有 148 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。