[mythtv-commits] Ticket #7525: Optimize Pulse handling in MythUI

MythTV mythtv at cvs.mythtv.org
Mon Jan 25 04:34:57 UTC 2010


#7525: Optimize Pulse handling in MythUI
---------------------------------------------+------------------------------
 Reporter:  danielk                          |       Owner:  danielk
     Type:  task                             |      Status:  new    
 Priority:  minor                            |   Milestone:  unknown
Component:  MythTV - User Interface Library  |     Version:  head   
 Severity:  medium                           |     Mlocked:  0      
---------------------------------------------+------------------------------

Comment(by Jim Stichnoth <stichnot@…>):

 I implemented the third item -- only traverse children that need to pulse.
 There are actually three independent pulse attributes: movement, alpha,
 and custom.  Each attribute is tracked as a boolean indicating whether a
 pulse check is needed for the next "frame".  Any time the pulse state
 changes (e.g. start/stop movement/animation) or a child is added/deleted,
 the state change is propagated up the tree.  The top-level
 MythUIType::Pulse() method always clears the custom pulse attribute, so
 any overridden Pulse() method needs to explicitly set the custom pulse
 attribute appropriately *after* calling MythUIType::Pulse().

 I'm attaching the patch, but keep in mind that after applying the patch in
 #7953, idle frontend CPU utilization on a lowly ION frontend is down to
 about 1%, maybe as high as 2%, so there's not a whole lot of performance
 left to be gained.

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/7525#comment:1>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list