[Trac] [AllemaniACs] #60: Replaceable main loop

AllemaniACs trac-notifications at lists.kbsg.rwth-aachen.de
Mon Jun 16 10:57:29 CEST 2008


#60: Replaceable main loop
---------------------+------------------------------------------------------
 Reporter:  tim      |       Owner:  tim           
     Type:  feature  |      Status:  new           
 Priority:  major    |   Milestone:  Basic Platform
Component:  Fawkes   |    Keywords:                
---------------------+------------------------------------------------------
 Currently we have two main loops, which can be enabled by a compile time
 switch. Both main loops offer the very same layout, but one is with time
 tracker support to get times of different loop steps.

 In the future we might want to have completely different main loops, like
 one with the vision running concurrent to the rest of the program. Also
 the possibility to just enable the benchmarking main loop at runtime for a
 couple of loops could help debugging a lagging plugin thread.

 The solution is to define a !MainLoop interface class which is used in the
 main application and comes with the current loop as the default main loop.
 A !MainLoopAspect has to be added that allows for replacing the current
 main loop (with a uniqueness constraint, only one thread may replace the
 main loop at a time).

 Special care has to be taken about loop locking and it has to be
 investigated if and how this can be done in a useful manner. As a test
 case the mentioned benchmarking loop should be implemented as a plugin.

-- 
Ticket URL: <https://lechuck.informatik.rwth-aachen.de:2342/trac/ticket/60>
AllemaniACs <http://robocup.rwth-aachen.de>
AllemaniACs Trac


More information about the fawkes-trac mailing list