X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Fdoc%2Fdeveloper%2Flttvwindow_events_delivery.txt;h=c52b6a3a9d47ab866be3cb624472df90716a01ec;hb=fd393f912454f7652cefd8a57b209d36b0f584a2;hp=a3a785f5f5a563bd561fb51ec47c0a476a5f94cd;hpb=2d262115fc06b5ffb6038207a6d0c1d5f81763c2;p=lttv.git diff --git a/ltt/branches/poly/doc/developer/lttvwindow_events_delivery.txt b/ltt/branches/poly/doc/developer/lttvwindow_events_delivery.txt index a3a785f5..c52b6a3a 100644 --- a/ltt/branches/poly/doc/developer/lttvwindow_events_delivery.txt +++ b/ltt/branches/poly/doc/developer/lttvwindow_events_delivery.txt @@ -308,7 +308,10 @@ list_in : empty list_out : many events requests -A. While (list_in !empty or list_out !empty) and !GTK Event pending +0.1 Lock the traces +0.2 Seek traces positions to current context position. + +A. While (list_in !empty or list_out !empty) 1. If list_in is empty (need a seek) 1.1 Add requests to list_in 1.1.1 Find all time requests with lowest start time in list_out (ltime) @@ -331,6 +334,9 @@ A. While (list_in !empty or list_out !empty) and !GTK Event pending 1.3.2 call before chunk 1.3.3 events hooks added 2. Else, list_in is not empty, we continue a read + 2.0 For each req of list_in + - Call before chunk + - events hooks added 2.1 For each req of list_out - if req.start time == current context time or req.start position == current position @@ -372,13 +378,14 @@ A. While (list_in !empty or list_out !empty) and !GTK Event pending - req.num -= count - if req.num == 0 or - current context time > req.end time + current context time >= req.end time or req.end pos == current pos or req.stop_flag == TRUE - Call end request for req - remove req from list_in + If GTK Event pending : break A loop B. When interrupted between chunks 1. for each request in list_in @@ -386,6 +393,8 @@ B. When interrupted between chunks 1.2. Remove start time 1.3. Move from list_in to list_out +C. Unlock the traces + Notes :