next up previous contents
Next: Le suivi Up: Découpage polyphonique Previous: Le nombre d'événements à   Contents

Solution retenue

Pour faire face à ces problèmes, la solution la plus simple est de réaliser le découpage de la séquence entière dès la première modélisation. Ceci est certes coûteux en place mémoire, mais facilite grandement les algorithmes et rend la modélisation beaucoup plus fiable : on évite ainsi tous les problèmes liés aux old_alivenotes et aux old_rests, ainsi que le risque de ne pas avoir assez de real_events pour modéliser nos états.




Une allocation mémoire minimum est effectuée à l'initialisation du suiveur. Puis on récupère le nombre d'événements de la séquence entière afin d'allouer la mémoire nécessaire.

La fonction suivimakenet_makenet appelle une fonction suivimakenet_cutseq, dans laquelle le découpage est réalisé dans son intégralité. A chaque refill, on récupère la position du dernier real_event pour pouvoir modéliser la suite.

La mémoire est libérée à chaque destruction de l'objet suiveur.



Gilles Mathieu 2002-08-22