internal static int[] ReadArray(this PrimitiveReader reader) { var result = new int[reader.ReadInt32()]; for (int i = 0; i < result.Length; i++) { result[i] = reader.ReadInt32(); } return(result); }
public void Load(PrimitiveReader reader) { Id = reader.ReadUInt64(); Message = reader.ReadString(); SourceId = reader.ReadInt32(); ThreadId = reader.ReadInt32(); Time = new DateTime(reader.ReadInt64()); numericLogLevel = reader.ReadInt32(); if(ThreadId == -1) { ThreadId = null; } }
public void ReadFrom(PrimitiveReader reader) { ModuleGUID = reader.ReadGuid(); var classNo = reader.ReadInt32(); for (var j = 0; j < classNo; j++) { var td = new TypeDescriptor(); td.ReadFrom(reader); Classes.Add(td); } }
public void ReadFrom(PrimitiveReader reader) { AssemblyQualifiedName = reader.ReadString(); var countNo = reader.ReadInt32(); for (var i = 0; i < countNo; i++) { var field = new FieldDescriptor(AssemblyQualifiedName); field.ReadFrom(reader); Fields.Add(field); } }
internal AssemblyDescriptor ReadAssembly() { var assemblyId = PrimitiveReader.ReadInt32(); if (assembliesList.Count <= assemblyId) { var descriptor = AssemblyDescriptor.ReadFromStream(this); assembliesList.Add(descriptor); return(descriptor); } else { return(assembliesList[assemblyId]); } }
public void Load(PrimitiveReader reader) { // checking magic var magic = reader.ReadUInt32(); if(magic != Magic) { throw new InvalidOperationException("Memory: Cannot resume state from stream: Invalid magic."); } SegmentSize = reader.ReadInt32(); size = reader.ReadUInt32(); if(emptyCtorUsed) { Init(); } var realSegmentsCount = 0; for(var i = 0; i < segments.Length; i++) { var isTouched = reader.ReadBoolean(); if(!isTouched) { continue; } var compressedSegmentSize = reader.ReadInt32(); var compressedBuffer = reader.ReadBytes(compressedSegmentSize); TouchSegment(i); realSegmentsCount++; LZ4Codec.Decode64(compressedBuffer, segments[i], SegmentSize); } this.NoisyLog(string.Format("{0} segments loaded from stream, of which {1} had content.", segments.Length, realSegmentsCount)); }