Index: tools/telemetry/telemetry/core/timeline/event.py |
diff --git a/tools/telemetry/telemetry/core/timeline/event.py b/tools/telemetry/telemetry/core/timeline/event.py |
index 916d540eabe8d2bdab06a28ef2d762c0ae71e980..561ca0d64be1a44b09e301e6f8e46dde1cefec19 100644 |
--- a/tools/telemetry/telemetry/core/timeline/event.py |
+++ b/tools/telemetry/telemetry/core/timeline/event.py |
@@ -22,6 +22,7 @@ class TimelineEvent(object): |
self.thread_duration = thread_duration |
self.args = args |
+ |
chrishenry
2014/05/13 03:22:38
2 blank lines intentional?
nednguyen
2014/05/14 17:32:27
Done.
|
@property |
def end(self): |
return self.start + self.duration |
@@ -36,6 +37,20 @@ class TimelineEvent(object): |
return None |
return self.thread_start + self.thread_duration |
+ def IsTopMessageLoop(self): |
chrishenry
2014/05/13 03:22:38
Document what a top message loop means?
|
+ return self.name == 'MessageLoop::RunTask' |
+ |
+ def GetOverlappedTimeDurationWithRange(self, start, end): |
+ overlapped_interval_start = max(self.start, start) |
+ overlapped_interval_end = min(self.end, end) |
+ return max(overlapped_interval_end - overlapped_interval_start, 0) |
+ |
+ def GetOverlappedThreadTimeDurationWithRange(self, thread_start, thread_end): |
+ overlapped_interval_thread_start = max(self.thread_start, thread_start) |
chrishenry
2014/05/13 03:22:38
This doesn't specifically handle None?
nednguyen
2014/05/14 17:32:27
Done.
|
+ overlapped_interval_thread_end = min(self.thread_end, thread_end) |
+ return max( |
+ overlapped_interval_thread_end - overlapped_interval_thread_start, 0) |
chrishenry
2014/05/13 03:22:38
nit: 4-space align?
nednguyen
2014/05/14 17:32:27
Done.
|
+ |
def __repr__(self): |
if self.args: |
args_str = ', ' + repr(self.args) |