1 // 2 // Copyright (c) 2010-2018 Antmicro 3 // Copyright (c) 2011-2015 Realtime Embedded 4 // 5 // This file is licensed under the MIT License. 6 // Full license text is available in 'licenses/MIT.txt'. 7 // 8 using System; 9 using Antmicro.Renode.Debugging; 10 using Antmicro.Renode.Time; 11 12 namespace Antmicro.Renode.EventRecording 13 { 14 // this is struct to prevent open stream serializer from caching all classes 15 internal struct RecordEntryBase 16 { RecordEntryBaseAntmicro.Renode.EventRecording.RecordEntryBase17 public RecordEntryBase(string name, Delegate handler, TimeInterval timestamp) : this() 18 { 19 DebugHelper.Assert(handler.Target == null, "The handler is supposed to have null target"); 20 21 this.Name = name; 22 this.Timestamp = timestamp; 23 this.Handler = handler; 24 } 25 ToStringAntmicro.Renode.EventRecording.RecordEntryBase26 public override string ToString() 27 { 28 return string.Format("[RecordEntry: Handler={0}, Name={1}, Timestamp={2}]", Handler.Method.Name, Name, Timestamp); 29 } 30 31 public string Name { get; private set; } 32 public TimeInterval Timestamp { get; private set; } 33 34 public readonly Delegate Handler; 35 } 36 } 37 38