Doxygen + samples (ça compile, mais faut tester encore)
This commit is contained in:
@@ -4,9 +4,9 @@
|
||||
* Ce module impl<70>mente les fonctions du fichier lecture.h
|
||||
*
|
||||
* @version 1
|
||||
* @author Module CSC3502 : Projet Informatique 1<>re ann<6E>e TELECOM SudParis
|
||||
* @date Mai 2014
|
||||
*/
|
||||
* @author Quentin, Guy
|
||||
* @date Mai 2014
|
||||
*/
|
||||
|
||||
#include "lecture.h"
|
||||
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
* Lecture de la mélodie
|
||||
*
|
||||
* @version 1
|
||||
* @author Module CSC3502 : Projet Informatique 1ère année TELECOM SudParis
|
||||
* @date Mai 2014
|
||||
*/
|
||||
* @author Quentin, Guy
|
||||
* @date Mai 2014
|
||||
*/
|
||||
|
||||
|
||||
#ifndef _LECTURE_H
|
||||
@@ -26,8 +26,8 @@
|
||||
/**
|
||||
Permet la lecture d'un motif
|
||||
@param[in] nbrChaines : nombre de chaines
|
||||
@param[in] tempo : nombre de tempo
|
||||
@param[in] melodie[] : motif lu
|
||||
@param[in] tempo : vitesse de lecture
|
||||
@param[in] melodie[] : tableau ordonné des motifs
|
||||
*/
|
||||
void lecture(int nbrChaines, int tempo, Motif* melodie[]);
|
||||
|
||||
|
||||
BIN
sources/samples/.samples.c.swp
Normal file
BIN
sources/samples/.samples.c.swp
Normal file
Binary file not shown.
50
sources/samples/samples.c
Normal file
50
sources/samples/samples.c
Normal file
@@ -0,0 +1,50 @@
|
||||
/**
|
||||
* @file samples.c
|
||||
*
|
||||
* Implémentation de samples.h
|
||||
*
|
||||
* @version 1
|
||||
* @author Guy
|
||||
* @date Mai 2014
|
||||
*/
|
||||
|
||||
#include "samples.h"
|
||||
|
||||
int doitEtreSauvegarde(Sample* tab[], int i) {
|
||||
return !(tab[i]->chemin[0]=='.' && tab[i]->chemin[1]=='/');
|
||||
}
|
||||
|
||||
void setSauvegarde(Sample* tab[], int i) {
|
||||
sprintf(tab[i]->chemin,"./%d.wav",i);
|
||||
}
|
||||
|
||||
void ajouterSample(Sample* tab[], int i, char* chemin) {
|
||||
tab[i] = calloc(1,sizeof(Sample));
|
||||
sprintf(tab[i]->nom,"Sample %d",i);
|
||||
}
|
||||
|
||||
void supprimerSample(Sample* tab[], int i, Poubelle** poub) {
|
||||
if (!(doitEtreSauvegarde(tab, i))) {
|
||||
Poubelle* p = malloc(sizeof(Poubelle));
|
||||
strcpy(p->chemin, tab[i]->chemin);
|
||||
p->suiv = *poub;
|
||||
*poub = p;
|
||||
}
|
||||
free(tab[i]);
|
||||
}
|
||||
|
||||
void setNom(Sample* sample, char nom[]) {
|
||||
strcpy(sample->nom,nom);
|
||||
}
|
||||
|
||||
void setHauteur(Sample* sample, float hauteur) {
|
||||
sample->hauteur_ref = hauteur;
|
||||
}
|
||||
|
||||
char* getNom(Sample* sample) {
|
||||
return sample->nom;
|
||||
}
|
||||
|
||||
float getHauteur(Sample* sample) {
|
||||
return sample->hauteur_ref;
|
||||
}
|
||||
@@ -1,38 +1,69 @@
|
||||
/**
|
||||
* @file samples.h
|
||||
*
|
||||
* Gestion des samples
|
||||
*
|
||||
* @version 1
|
||||
* @author Guy
|
||||
* @date Mai 2014
|
||||
*/
|
||||
|
||||
#ifndef _samples_h
|
||||
#define _samples_h
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include "../fmod/include/fmod.h"
|
||||
|
||||
#define NMAX_SAMPLES 10
|
||||
|
||||
typedef struct _sample{
|
||||
//TODO
|
||||
// Je propose un truc, mais c'est à Quentin de le compléter,
|
||||
// voire de le changer complètement.
|
||||
char[] son; // contient le nom du fichier WAV (qui sera placé dans le sous-dossier samples)
|
||||
char[] nom; // juste un nom pour qu'on puisse humainement identifier le sample
|
||||
char* chemin; // contient le nom du fichier WAV (qui sera placé dans le sous-dossier samples)
|
||||
char* nom; // juste un nom pour qu'on puisse humainement identifier le sample
|
||||
// Infos relatives au resampling
|
||||
unsigned long int deb; // numéro de l'échantillon de début
|
||||
unsigned long int fin; // numéro de l'échantillon de fin
|
||||
float hauteur_ref; // fréquence de la hauteur du sample à l'état brut (sans repitching)
|
||||
char fichier; // vaut 1 si le sample doit être ajouté au projet lors de la prochaine sauvegarde, 0 sinon.
|
||||
} Sample;
|
||||
|
||||
typedef Sample* Tab_samples[];
|
||||
/**
|
||||
* Il s'agit de définir une liste des samples à supprimer lors de la prochaine sauvegarde.
|
||||
*/
|
||||
typedef struct _poubelle{
|
||||
char* chemin;
|
||||
struct _poubelle* suiv;
|
||||
} Poubelle;
|
||||
|
||||
void ajouterSample(Tab_samples tab[], int i, char chemin[]);
|
||||
/**
|
||||
* Cette fonction à valeur booléenne détermine si le fichier doit être copié dans le dossier de sauvegarde.
|
||||
*/
|
||||
int doitEtreSauvegarde(Sample* tab[], int i);
|
||||
|
||||
void setResampling(Sample* sample, int deb, int fin);
|
||||
/**
|
||||
* Cette procédure définit le statut du fichier comme déjà copié dans la sauvegarde.
|
||||
*/
|
||||
void setSauvegarde(Sample* tab[], int i);
|
||||
|
||||
void setNom(Sample* sample, char[] nom);
|
||||
void ajouterSample(Sample* tab[], int i, char* chemin);
|
||||
|
||||
void supprimerSample(Sample* tab[], int i, Poubelle** poub);
|
||||
|
||||
//void setResampling(Sample* sample, int deb, int fin);
|
||||
|
||||
void setNom(Sample* sample, char nom[]);
|
||||
|
||||
void setHauteur(Sample* sample, float hauteur);
|
||||
|
||||
unsigned long int getDeb(Sample* sample);
|
||||
//unsigned long int getDeb(Sample* sample);
|
||||
|
||||
unsigned long int getFin(Sample* sample);
|
||||
//unsigned long int getFin(Sample* sample);
|
||||
|
||||
char[] getNom(Sample* sample);
|
||||
char* getNom(Sample* sample);
|
||||
|
||||
float getHeuteur(Sample* sample);
|
||||
float getHauteur(Sample* sample);
|
||||
|
||||
#endif
|
||||
|
||||
BIN
sources/samples/samples.o
Normal file
BIN
sources/samples/samples.o
Normal file
Binary file not shown.
Reference in New Issue
Block a user