public virtual void ReadData(FastBinaryReader reader, Object additionalInfo)
 {
     FColor      = reader.ReadInt32();
     FHue        = reader.ReadByte();
     FSaturation = reader.ReadByte();
     FBrightness = reader.ReadByte();
 }
예제 #2
0
        public bool MoveNext()
        {
            // Done?
            if (_reader.Position >= _reader.Buffer.Length)
            {
                return(false);
            }

            // Read type of next trace entry
            var entryType = (TraceEntryTypes.TraceEntryTypes)_reader.ReadByte();

            // Deserialize trace entry
            _current = entryType switch
            {
                TraceEntryTypes.TraceEntryTypes.HeapAllocation => new HeapAllocation(),
                TraceEntryTypes.TraceEntryTypes.HeapFree => new HeapFree(),
                TraceEntryTypes.TraceEntryTypes.StackAllocation => new StackAllocation(),
                TraceEntryTypes.TraceEntryTypes.Branch => new Branch(),
                TraceEntryTypes.TraceEntryTypes.HeapMemoryAccess => new HeapMemoryAccess(),
                TraceEntryTypes.TraceEntryTypes.ImageMemoryAccess => new ImageMemoryAccess(),
                TraceEntryTypes.TraceEntryTypes.StackMemoryAccess => new StackMemoryAccess(),
                _ => throw new TraceFormatException("Illegal trace entry type.")
            };
            _current.FromReader(_reader);
            return(true);
        }
 public virtual void ReadData(FastBinaryReader reader, Object additionalInfo)
 {
     // Version 5.0 data types
     FSequenceID           = reader.ReadInt32();
     FSessionID            = reader.ReadUInt32();
     FRequestID            = reader.ReadUInt32();
     FSourceUtcOffset      = reader.ReadInt16();
     FDateTime             = reader.ReadDateTime();
     FDomainID             = reader.ReadInt32();
     FProcessID            = reader.ReadInt32();
     FThreadID             = reader.ReadInt32();
     FCategory             = reader.ReadString();
     FApplication          = reader.ReadString();
     FMachineName          = reader.ReadString();
     FUserDomainName       = reader.ReadString();
     FUserName             = reader.ReadString();
     FIndentLevel          = reader.ReadSByte();
     FBkColor              = Color.FromArgb(reader.ReadInt32());
     FMessageType          = (MessageType)reader.ReadInt32();
     FMessageSubType       = reader.ReadByte();
     FMessage              = reader.ReadString();
     FDetailType           = reader.ReadInt32();
     FExtPropertyContainer = reader.ReadObject <ReflectInsightPropertiesContainer>();
     FSubDetails           = reader.ReadObject <FastSerializerObjectData>();
     FDetails              = reader.ReadObject <FastSerializerObjectData>();
 }
예제 #4
0
 protected override void Init(FastBinaryReader reader)
 {
     SourceImageId = reader.ReadInt32();
     SourceInstructionRelativeAddress = reader.ReadUInt32();
     DestinationImageId = reader.ReadInt32();
     DestinationInstructionRelativeAddress = reader.ReadUInt32();
     Taken      = reader.ReadBoolean();
     BranchType = (BranchTypes)reader.ReadByte();
 }
예제 #5
0
파일: Branch.cs 프로젝트: UzL-ITS/Microwalk
 public void FromReader(FastBinaryReader reader)
 {
     SourceImageId = reader.ReadInt32();
     SourceInstructionRelativeAddress = reader.ReadUInt32();
     DestinationImageId = reader.ReadInt32();
     DestinationInstructionRelativeAddress = reader.ReadUInt32();
     Taken      = reader.ReadBoolean();
     BranchType = (BranchTypes)reader.ReadByte();
 }