Alexandria.Engines.Unreal.Package.ReadReference C# (CSharp) Метод

ReadReference() публичный Метод

Read a reference from the BinaryReader.
public ReadReference ( BinaryReader reader ) : Reference
reader System.IO.BinaryReader The to read from.
Результат Reference
        public Reference ReadReference(BinaryReader reader)
        {
            int index = UIndex.Read(reader);
            return ResolveReference(index);
        }

Usage Example

Пример #1
0
        public static object Load(Package package, BinaryReader reader, object current)
        {
            var info = new FieldInfo(reader);
            var u25  = new FieldInfo(0x25);

            if (info.Type == FieldTypeBase.Boolean)
            {
                return(info.IsArray);
            }
            if (info.IsArray)
            {
                switch (info.Type)
                {
                case FieldTypeBase.Str:
                    return(LoadArrayElement(current, () => reader.ReadStringz(reader.ReadByte(), Encoding.ASCII)));

                case FieldTypeBase.Integer:
                    return(LoadArrayElement(current, reader.ReadInt32));

                case FieldTypeBase.Object:
                    return(LoadArrayElement(current, () => package.ReadReference(reader)));

                case FieldTypeBase.Struct:
                    return(LoadArrayElement(current, () => LoadSingle(package, reader, info)));

                default:
                    throw new NotImplementedException(info.Type + " does not have an implementation for loading arrays (index " + info.ArrayIndex + ", size " + info.Size + ")");
                }
            }
            else
            {
                return(LoadSingle(package, reader, info));
            }
        }
All Usage Examples Of Alexandria.Engines.Unreal.Package::ReadReference