#include #include #include #include "motifs/motifs.h" #include "melodie/melodie.h" #include "lecture/lecture.h" //#include //#include //#include #define DEF_NBR_TMP 16 #define MAX_PATTERNS 256 // Fonctions de débug void afficherMotif(Motif* m, int nbrPortees){ printf("%s :\n",m->nom); for (int tmp = 0; tmp < m->nbrTmp; tmp++){ for (int portee = 0; portee < nbrPortees; portee++){ printf("%d ",getNote(m,portee,tmp)); } printf("\n"); } } // Fin des fonctions de débug void debut(Motif* melodie[], Motif* liste, int nbrPortees){ ajouterMotif(&liste, DEF_NBR_TMP, nbrPortees); Motif* m = liste; // My Little Pony. definirNote(m,0,0,1); definirInstrument(m,0,0,1); definirInstrument(m,0,2,-1); definirNote(m,0,4,1); definirInstrument(m,0,4,0); definirNote(m,0,5,1); definirInstrument(m,0,5,1); definirInstrument(m,0,6,-1); definirNote(m,0,7,1); definirInstrument(m,0,7,2); definirInstrument(m,0,8,-1); definirNote(m,0,9,1); definirInstrument(m,0,9,1); definirInstrument(m,0,12,-1); ajouterMotif(&liste, DEF_NBR_TMP, nbrPortees); Motif* n = liste; // I used to wonder what friendship could be. definirNote(n,0,1,1); definirInstrument(n,0,1,3); definirNote(n,0,2,1); definirInstrument(n,0,2,3); definirNote(n,0,3,1); definirInstrument(n,0,3,3); definirNote(n,0,4,1); definirInstrument(n,0,4,3); definirInstrument(n,0,5,-1); definirNote(n,0,6,1); definirInstrument(n,0,6,1); definirNote(n,0,7,1); definirInstrument(n,0,7,2); definirInstrument(n,0,8,-1); definirNote(n,0,9,1); definirInstrument(n,0,9,1); definirInstrument(n,0,10,-1); definirNote(n,0,11,1); definirInstrument(n,0,11,3); definirInstrument(n,0,12,-1); definirNote(n,0,13,1); definirInstrument(n,0,13,2); definirInstrument(n,0,14,-1); definirNote(n,0,15,1); definirInstrument(n,0,15,1); ajouterMotif(&liste, DEF_NBR_TMP, nbrPortees); Motif* p = liste; // Until you all shared its magic with me. definirNote(p,0,0,1); definirInstrument(p,0,0,3); definirNote(p,0,1,1); definirInstrument(p,0,1,4); definirInstrument(p,0,2,-1); definirNote(p,0,3,1); definirInstrument(p,0,3,4); definirInstrument(p,0,4,-1); definirNote(p,0,5,1); definirInstrument(p,0,5,3); definirInstrument(p,0,6,-1); definirNote(p,0,7,1); definirInstrument(p,0,7,2); definirInstrument(p,0,8,-1); definirNote(p,0,9,1); definirInstrument(p,0,9,1); definirNote(p,0,10,1); definirInstrument(p,0,10,3); definirInstrument(p,0,11,-1); definirNote(p,0,12,1); definirInstrument(p,0,12,2); definirInstrument(p,0,14,-1); ajouterMotifVirtuel(melodie,0,m); ajouterMotifVirtuel(melodie,1,n); ajouterMotifVirtuel(melodie,2,m); ajouterMotifVirtuel(melodie,3,p); } int main( int argc, char *argv[] ){ //lecture(nbrPortee, melodie); // insérer code GTK ici GtkBuilder *monBuilder; GtkWidget *maFenetre; gtk_init( &argc, &argv ); monBuilder = gtk_builder_new(); gtk_builder_add_from_file( monBuilder, "GUI/ponytracker.glade", NULL); gtk_builder_connect_signals( monBuilder, NULL); maFenetre = GTK_WIDGET( gtk_builder_get_object( monBuilder, "fenetreprincipale")); gtk_widget_show_all (maFenetre); gtk_main(); return EXIT_SUCCESS; } void fenetreSample ( int argc, char *argv[] ) { GtkBuilder *monBuilderSample; GtkWidget *maFenetreSample; gtk_init( &argc, &argv ); monBuilderSample = gtk_builder_new(); gtk_builder_add_from_file( monBuilderSample, "GUI/ponytracker.glade", NULL); gtk_builder_connect_signals( monBuilderSample, NULL); maFenetreSample = GTK_WIDGET( gtk_builder_get_object( monBuilderSample, "ajoutsample")); gtk_widget_show_all (maFenetreSample); } void fenetreInstrument ( int argc, char *argv[] ) { GtkBuilder *monBuilderInstrument; GtkWidget *maFenetreInstrument; gtk_init( &argc, &argv ); monBuilderInstrument = gtk_builder_new(); gtk_builder_add_from_file( monBuilderInstrument, "GUI/ponytracker.glade", NULL); gtk_builder_connect_signals( monBuilderInstrument, NULL); maFenetreInstrument = GTK_WIDGET( gtk_builder_get_object( monBuilderInstrument, "ajoutinstrument")); gtk_widget_show_all (maFenetreInstrument); } void fenetreMotif ( int argc, char *argv[] ) { GtkBuilder *monBuilderMotif; GtkWidget *maFenetreMotif; gtk_init( &argc, &argv ); monBuilderMotif = gtk_builder_new(); gtk_builder_add_from_file( monBuilderMotif, "GUI/ponytracker.glade", NULL); gtk_builder_connect_signals( monBuilderMotif, NULL); maFenetreMotif = GTK_WIDGET( gtk_builder_get_object( monBuilderMotif, "ajoutmotif")); gtk_widget_show_all (maFenetreMotif); } void lancerLecture () { Motif* melodie[MAX_PATTERNS] = {NULL}; Motif* liste = NULL; int nbrPortees = 1; courant = 0; taille = 0; debut(melodie, liste, nbrPortees); lecture(nbrPortees,480,melodie); } void quitter () { gtk_main_quit(); }