private void GenerateData() { EventDescriptionBoard board = new EventDescriptionBoard() { TimeSettings = new TimeSettings() { Origin = 0, PrecisionCut = 0, TicksToMs = 0.0001 }, TimeSlice = new Durable(StartTime.Ticks, FinishTime.Ticks), CPUCoreCount = Environment.ProcessorCount }; FrameGroup group = new FrameGroup(board); List <SyncEvent> syncEvents = new List <SyncEvent>(Collector.SwitchContexts.Events.Count); foreach (SwitchContextData sc in Collector.SwitchContexts.Events) { if (board.TimeSlice.Start <= sc.Timestamp.Ticks && sc.Timestamp.Ticks <= board.TimeSlice.Finish) { syncEvents.Add(new SyncEvent() { CPUID = sc.CPUID, NewThreadID = sc.NewThreadID, OldThreadID = sc.OldThreadID, Timestamp = new Tick() { Start = sc.Timestamp.Ticks } }); } } SynchronizationMap syncMap = new SynchronizationMap(syncEvents); group.AddSynchronization(syncMap); Group = group; }
static List<Entry> ReadEventList(BinaryReader reader, EventDescriptionBoard board) { int count = reader.ReadInt32(); List<Entry> result = new List<Entry>(count); for (int i = 0; i < count; ++i) result.Add(Entry.Read(reader, board)); return result; }