コード例 #1
0
        public override async Task WriteBuffer(ByteArrayWriter Writer, int CurrentOffset)
        {
            Writer.WriteInt32(TypeReference);
            Writer.WriteInt32(ParentReference);
            Writer.WriteInt32(OwnerReference);

            await NameTableIndex.WriteBuffer(Writer, 0);

            Writer.WriteInt32(ArchetypeReference);

            Writer.WriteUInt32(FlagsHigh);
            Writer.WriteUInt32(FlagsLow);

            Writer.WriteInt32(BuilderSerialDataSize);
            Writer.WriteInt32(BuilderSerialDataOffset);

            Writer.WriteUInt32(ExportFlags);

            Writer.WriteInt32(NetObjectCount);

            await Writer.WriteBytes(Guid);

            Writer.WriteUInt32(Unknown1);

            await Writer.WriteBytes(Unknown2);
        }
コード例 #2
0
        internal async Task ReadExportTableEntry(ByteArrayReader reader, DomainHeader header)
        {
            TypeReference   = reader.ReadInt32();
            ParentReference = reader.ReadInt32();
            OwnerReference  = reader.ReadInt32();

            NameTableIndex.ReadNameTableIndex(reader, header);

            ArchetypeReference = reader.ReadInt32();

            FlagsHigh = reader.ReadUInt32();
            FlagsLow  = reader.ReadUInt32();

            SerialDataSize   = reader.ReadInt32();
            SerialDataOffset = reader.ReadInt32();

            ExportFlags = reader.ReadUInt32();

            NetObjectCount = reader.ReadInt32();

            Guid = await reader.ReadBytes(16);

            Unknown1 = reader.ReadUInt32();

            Unknown2 = await reader.ReadBytes(sizeof(uint) *NetObjectCount);
        }
コード例 #3
0
        public override int GetBuilderSize()
        {
            BuilderSize = PackageNameIndex.GetBuilderSize()
                          + TypeNameIndex.GetBuilderSize()
                          + sizeof(int)
                          + NameTableIndex.GetBuilderSize();

            return(BuilderSize);
        }
コード例 #4
0
        public override int GetBuilderSize()
        {
            BuilderSize = sizeof(int) * 7
                          + sizeof(uint) * 4
                          + NameTableIndex.GetBuilderSize()
                          + Guid.Length
                          + Unknown2.Length;

            return(BuilderSize);
        }
コード例 #5
0
        public override async Task WriteBuffer(ByteArrayWriter Writer, int CurrentOffset)
        {
            await PackageNameIndex.WriteBuffer(Writer, 0);

            await TypeNameIndex.WriteBuffer(Writer, 0);

            Writer.WriteInt32(OwnerReference);

            await NameTableIndex.WriteBuffer(Writer, 0);
        }
コード例 #6
0
        public async Task ReadImportTableEntry(ByteArrayReader reader, DomainHeader header)
        {
            await Task.Run(() => PackageNameIndex.ReadNameTableIndex(reader, header));

            await Task.Run(() => TypeNameIndex.ReadNameTableIndex(reader, header));

            OwnerReference = reader.ReadInt32();

            await Task.Run(() => NameTableIndex.ReadNameTableIndex(reader, header));
        }