// alignement.c

// << Algorithmique du texte >>
// Maxime Crochemore, Christophe Hancart et Thierry Lecroq
// Vuibert, 2001.

#include <stdio.h>
#include "chl.h"
#include "alignement.h"


Alignement ajouterAuDebutAlignement(Alignement alignement, Lettre haut, Lettre bas) {
   Alignement z;

   z = (Alignement)malloc(sizeof(struct _alignement));
   if (z == NULL) error("nouvelAlignement");
   z->haut = haut;
   z->bas = bas;
   z->suivant = alignement;
   return(z);
}


Alignement retirerAuDebutAlignement(Alignement alignement) {
   Alignement z;

   if (alignement != NULL) {
      z = alignement->suivant;
          free(alignement);
          return(z);
   }
}


void ecrireAlignement(Alignement alignement) {
   Alignement z;

   z = alignement;
   while (z != NULL) {
      printf("%c", z->haut);
          z = z->suivant;
   }
   printf("\n");
   z = alignement;
   while (z != NULL) {
      printf("%c", z->bas);
          z = z->suivant;
   }
   printf("\n");
}