Loading s4prg_rust_04_track...

enib_small.png S4-PRG_Rust 04_Track — Les pistes sonores

La séquence d'échantillons et le sample-rate (le nombre d'échantillons sonores par seconde) sont étroitement liés.
Il est donc très naturel de les regrouper dans un type structuré avec une implémentation fournissant les fonctionnalités qui le concernent.

Dans le module track, déclarez alors une structure Track qui servira à représenter une piste sonore.
Elle est constituée de ces deux membres :

Cette structure doit être déclarée pub afin d'être accessible depuis l'extérieur du module track.
En revanche, ses deux membres ne doivent PAS être publics car nous appliquons le principe d'encapsulation des ressources afin qu'ils ne soient pas modifiés de manière inappropriée.
Nous lui adjoindrons un bloc d'implémentation afin de fournir les fonctionnalités permettant d'interagir avec des données de ce type.

Complétez la documentation et fournissez des tests unitaires très simples.
Lors de la mise au point, le programme principal pourra s'inspirer du test d'intégration déjà réalisé pour la fonction de sauvegarde, mais en l'adaptant pour utiliser les nouvelles fonctionnalités.
Vous en ferez ensuite un nouveau test d'intégration qui restera disponible pour toute la suite du projet.