On Mon, Apr 18, 2016 at 10:20:23PM +0800, Wangnan (F) wrote:
> 
> 
> On 2016/4/18 21:45, Jiri Olsa wrote:
> >On Mon, Apr 18, 2016 at 06:32:08AM +0000, Wang Nan wrote:
> >>Use 'trigger' to model operations which need to be executed when
> >>an event (a signal, for example) is observed.
> >>
> >>States and transits:
> >>
> >>  OFF--(on)--> READY --(toggle)--> TOGGLED --(process)--> PROCESSING
> >>                 ^                    |                      |
> >>                 |                    |                      |
> >>                 |                 (ready)                (ready)
> >>                 |                    |                      |
> >>                  \__________________/______________________/
> >>
> >>is_toggled and is_ready are two key functions to query the state of
> >>a trigger. is_toggled means the event already happen; is_ready means the
> >>trigger is waiting for the event.
> >>
> >>'PROCESSING' represents a state the event happens and be observed, and
> >>the processing is on the way so can't accept a new event immediately.
> >hum, I must be missing something.. but I dont see how you're
> >using this state except for smal window within:
> >
> >                 if (auxtrace_snapshot_is_toggled()) {
> >  ->                     auxtrace_snapshot_process();
> >                         if (!auxtrace_snapshot_is_error())
> >  ->                              record__read_auxtrace_snapshot(rec);
> >
> >but no other place queries or depends on this state
> 
> Right.
> 
> Since we are creating a new class, I think we can make code simpler by
> merging
> all state variables into trigger.
> 
> Without this state we must keep 'auxtrace_record__snapshot_started'.

do we? we dont need this for switch_output code apparently

jirka

> 
> I think merging it into trigger class makes the whole program a little
> bit simpler. Or do you think keeping trigger class simpler whould be better?
> 
> Thank you.
> 
> 

Reply via email to