/**
 * \file Erosion.h
 * Implante un filtre d'erosion en morphologie mathematique.
 * 
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */

#ifndef ____EROSION____
#define ____EROSION____

#include "Image.h"
#include "ElementStructurant.h"

/**
 * Filtre une image par erosion.
 *
 * @param src l'image a filtrer.
 * @param dst l'image resultat apres filtrage.
 * @param e l'elementStructurant d'erosion.
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */
void filtreImageErosion(struct image *src,struct image *dst,struct elementStructurant *e);
  
/**
 * Filtre une image par erosion sans allocation de memoire pour l'image resultat.
 *
 * @param src l'image a filtrer.
 * @param dst l'image resultat apres filtrage.
 * @param deb le numero de la ligne de debut du filtrage.
 * @param fin le numero de la ligne de fin du filtrage.
 * @param e l'elementStructurant d'erosion.
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */
void filtreImageErosion(struct image *src,struct image *dst,int deb,int fin,struct elementStructurant *e);

/**
 * Filtre une image par erosion.
 *
 * @param src l'image a filtrer.
 * @param dst l'image resultat apres filtrage.
 * @param e l'elementStructurant d'erosion.
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */
void filtreImageErosion(int callage,struct image *src,struct image *dst,struct elementStructurant *e);
  
/**
 * Filtre une image par erosion sans allocation de memoire pour l'image resultat.
 *
 * @param src l'image a filtrer.
 * @param dst l'image resultat apres filtrage.
 * @param deb le numero de la ligne de debut du filtrage.
 * @param fin le numero de la ligne de fin du filtrage.
 * @param e l'elementStructurant d'erosion.
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */
void filtreImageErosion(int callage,struct image *src,struct image *dst,int deb,int fin,struct elementStructurant *e);

#endif
