#1 fix call ordering of recursive functions in ags_channel.c

0.4
closed
None
2014-03-11
2012-10-07
Joël Krähemann
No

I messed up the code because I wanted to make understanding ags internals easier. It would be nice if all nested tree iterations could be handled from the root to the leafes but it's not practically.
Try to revert changes and going the way I initially wanted to go with individual strategies of iterating the tree is mandatory because you can achieve some optimization.

Affected functions:

  • ags_channel_recursive_play_init()
  • ags_channel_recursive_reset_group_ids()

Discussion

    • status: open --> pending
     
    • assigned_to: Joel Krähemann
     
  • To set up a functional synthesis networks objects inheritating of AgsRecall shall fit with the set up procedure mentionend below.

    set up procedure description:

    1. AgsRecallClass::duplicate
    2. AgsRecallClass::resolve_dependencies
    3. AgsRecallClass::run_init_pre, AgsRecallClass::run_init_inter, AgsRecallClass::run_init_post

    Whereby duplicating recalls is done from the root to the leafes.

     
    Last edit: Joël Krähemann 2013-11-18
  • I recognized that duplicate was externalized and not completely revised.

    There was a bug for a long time, namely the lack of those important flags of AgsRecall:

    • AGS_RECALL_OUTPUT_ORIENTATED
    • AGS_RECALL_INPUT_ORIENTATED
     
  • fixed ags_channel_recusive_play_init() by revision 1354.

     
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -4,4 +4,4 @@
     Affected functions:
    
     * ags_channel_recursive_play_init()
    -* ags_channel_recurisve_reset_group_ids()
    +* ags_channel_recursive_reset_group_ids()
    
     
  • During replacing of AgsGroupId by AgsRecyclingContainer the recursive init functions will be covered.

    You will soon recognize that AgsGroupId is reasonably deprecated.

     
  • Final turn of refactoring. Working on ags_channel_recursive_reset_group_ids()

     
    • status: pending --> closed