protected bool ParseCustomEvent(GCEvent gcEvent) { switch (gcEvent.Type) { case GCEventType.CUSTOM_EVENT_START: { custom_event_start = gcEvent.Timestamp; return true; } case GCEventType.CUSTOM_EVENT_END: { custom_event_end = gcEvent.Timestamp; return true; } default: return false; } }
private static GCEvent Parse(string line, Stack<GCEvent> noTimestamp, ref double timestamp) { double stamp = GCEventTypeMatcher.MatchTimestamp (line); GCEventTypeMatcher eventTypeMatch = GCEventTypeMatcher.Match (line); GCEvent gcEvent = null; if (stamp != default(double) && noTimestamp.Count > 0) { while (noTimestamp.Count > 0) { noTimestamp.Pop ().Timestamp = stamp; } } if (eventTypeMatch != null) { gcEvent = new GCEvent (); gcEvent.Type = eventTypeMatch.type; switch (eventTypeMatch.timestampType) { case GCEventTimestampType.BEFORE: Utils.Assert (timestamp != default(double)); gcEvent.Timestamp = timestamp; break; case GCEventTimestampType.INCLUDED: Utils.Assert (stamp != default(double)); gcEvent.Timestamp = stamp; break; case GCEventTimestampType.AFTER: noTimestamp.Push (gcEvent); break; } } if (stamp != default(double)) timestamp = stamp; return gcEvent; }
public virtual void Visit(GCEvent ev) { }