Add ToNonOverlappedEvents to header file.
PiperOrigin-RevId: 342302821 Change-Id: I4ed570f1d0082ee89c5973f5e233f144e86a0051
This commit is contained in:
parent
96a5c2abbb
commit
fe5a16e79a
@ -120,23 +120,6 @@ class PriorityTracker {
|
||||
}
|
||||
};
|
||||
|
||||
std::vector<EventTypeSpan> ToNonOverlappedEvents(
|
||||
const std::vector<EventTypeSpan>& overlapped_events) {
|
||||
std::vector<EventBoundary> event_boundaries =
|
||||
GenerateEventBoundaries(overlapped_events);
|
||||
std::vector<EventTypeSpan> result;
|
||||
if (event_boundaries.empty()) return result;
|
||||
result.reserve(event_boundaries.size());
|
||||
PriorityTracker priority_tracker;
|
||||
for (int64 i = 0, end = (event_boundaries.size() - 1); i < end; i++) {
|
||||
EventType highest_priority = priority_tracker.Update(event_boundaries[i]);
|
||||
result.push_back({highest_priority, Timespan::FromEndPoints(
|
||||
event_boundaries[i].time_ps,
|
||||
event_boundaries[i + 1].time_ps)});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
void CombineStepDetails(const StepDetails& src, StepDetails* dst) {
|
||||
dst->AppendMarkers(src.Markers());
|
||||
dst->AppendEvents(src.Events());
|
||||
@ -306,6 +289,23 @@ void CombineStepEvents(const StepEvents& src, StepEvents* dst) {
|
||||
}
|
||||
}
|
||||
|
||||
std::vector<EventTypeSpan> ToNonOverlappedEvents(
|
||||
const std::vector<EventTypeSpan>& overlapped_events) {
|
||||
std::vector<EventBoundary> event_boundaries =
|
||||
GenerateEventBoundaries(overlapped_events);
|
||||
std::vector<EventTypeSpan> result;
|
||||
if (event_boundaries.empty()) return result;
|
||||
result.reserve(event_boundaries.size());
|
||||
PriorityTracker priority_tracker;
|
||||
for (int64 i = 0, end = (event_boundaries.size() - 1); i < end; i++) {
|
||||
EventType highest_priority = priority_tracker.Update(event_boundaries[i]);
|
||||
result.push_back({highest_priority, Timespan::FromEndPoints(
|
||||
event_boundaries[i].time_ps,
|
||||
event_boundaries[i + 1].time_ps)});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
// Converts from overlapped step-events to non-overlapped step-events.
|
||||
StepEvents ToNonOverlappedStepEvents(const StepEvents& overlapped_step_events) {
|
||||
StepEvents non_overlapped_step_events;
|
||||
|
@ -236,6 +236,10 @@ std::string PrintStepEvents(const StepEvents& step_events);
|
||||
// Combines the src StepEvents into dst.
|
||||
void CombineStepEvents(const StepEvents& src, StepEvents* dst);
|
||||
|
||||
// Converts from overlapped events to non-overlapped events.
|
||||
std::vector<EventTypeSpan> ToNonOverlappedEvents(
|
||||
const std::vector<EventTypeSpan>& overlapped_events);
|
||||
|
||||
// Converts from overlapped step-events to non-overlapped step events.
|
||||
StepEvents ToNonOverlappedStepEvents(const StepEvents& overlapped_step_events);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user