Advertisement
Guest User

Untitled

a guest
Dec 15th, 2015
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.87 KB | None | 0 0
  1. /*!
  2. \file lecture.h
  3. \author Colin Killian <colinkilli@eisti.eu> Brun Nicolas <brunnicola@eisti.eu> Salomon Clément <salomoncle@eisti.eu>
  4. \date 20/01/15
  5. \version 1.0
  6. \brief include du fichier lecture.c
  7. \remarks Aucune
  8. */
  9. #ifndef H_LECTURE
  10. #define H_LECTURE
  11.  
  12. /**
  13. * \struct Pixel
  14. * \brief Structure permettant de stocker un pixel.
  15. */
  16. typedef struct _Pixel
  17. {
  18. int R;
  19. int G;
  20. int B;
  21. }Pixel;
  22.  
  23. /**
  24. * \struct Tabimage
  25. * \brief Structure permettant de stocker une image.
  26. */
  27. typedef struct _Tabimage
  28. {
  29. int largeur;
  30. int hauteur;
  31. Pixel *matrice;
  32. }Tabimage;
  33.  
  34. /**
  35. * \struct Tabimage
  36. * \brief Structure permettant de stocker un point.
  37. */
  38. typedef struct _Point
  39. {
  40. int ordonnee;
  41. int abscisse;
  42. }Point;
  43.  
  44. /*!
  45. \fn void bornesMaximales(Tabimage * picture,Point * x, Point *y)
  46. \author Brun Nicolas <brunnicola@eisti.eu>
  47. \date 20/01/15
  48. \version 1.0
  49. \param Tabimage *picture: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  50. \param Point * x: Un pointeur sur une coordonnée de pixel de l'image.
  51. \param Point * y: Un pointeur sur une coordonnée de pixel de l'image.
  52. \return Rien
  53. \brief Permet de définir les bornes d'application du filtre sur toute l'image.
  54. \remarks Aucune
  55. */
  56. void bornesMaximales(Tabimage * picture,Point * x, Point *y);
  57. /*!
  58. \fn void determinerPoint(Tabimage * picture,Point * x,Point * y,int argc, char const*argv[],int * i)
  59. \author Brun Nicolas <brunnicola@eisti.eu>
  60. \date 20/01/15
  61. \version 1.0
  62. \param Tabimage *picture: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  63. \param Point * x: Un pointeur sur une coordonnée de pixel de l'image.
  64. \param Point * y: Un pointeur sur une coordonnée de pixel de l'image.
  65. \param argc : Entier correspondant au nombre de paramètres donnés dans l'appel de focntion.
  66. \param char const*argv[] : Tableau des différents paramètres passés lors de l'execution du programme.
  67. \param int * i : Pointeur sur un l'itérateur i de la fonction menu.
  68. \return Rien
  69. \brief Evalue si le filtre doit être traiter sur une partie de l'image ou sur l'image entière.
  70. \remarks Aucune
  71. */
  72. void determinerPoint(Tabimage * picture,Point * x,Point * y,int argc, char const*argv[],int * i);
  73. /*!
  74. \fn void menu(Tabimage * picture, Point *x, Point * y,int argc, char const * argv[],int * i)
  75. \author Brun Nicolas <brunnicola@eisti.eu>
  76. \date 20/01/15
  77. \version 1.0
  78. \param Tabimage *picture: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  79. \param Point * x: Un pointeur sur une coordonnée de pixel de l'image.
  80. \param Point * y: Un pointeur sur une coordonnée de pixel de l'image.
  81. \param argc : Entier correspondant au nombre de paramètres donnés dans l'appel de focntion.
  82. \param char const*argv[] : Tableau des différents paramètres passés lors de l'execution du programme.
  83. \param int * i : Pointeur sur un l'itérateur i de la fonction menu.
  84. \return Rien
  85. \brief Permet d'appliquer le bon traitement en fonction des paramètres envoyés.
  86. \remarks Aucune
  87. */
  88. void menu(Tabimage * picture, Point *x, Point * y,int argc, char const * argv[],int * i);
  89. /*!
  90. \fn void getDimension(FILE * fichier,Tabimage * picture)
  91. \author Brun Nicolas <brunnicola@eisti.eu>
  92. \date 20/01/15
  93. \version 1.0
  94. \param Tabimage *picture: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  95. \param FILE * fichier : Pointeur sur le fichier d'origine.
  96. \return Rien
  97. \brief Permet de récupérer les dimensions de l'image d'origine.
  98. \remarks Aucune
  99. */
  100. void getDimension(FILE * fichier,Tabimage * picture);
  101. /*!
  102. \fn void skipCommentaire(FILE *fichier)
  103. \author Brun Nicolas <brunnicola@eisti.eu>
  104. \date 20/01/15
  105. \version 1.0
  106. \param FILE * fichier : Pointeur sur le fichier d'origine.
  107. \return Rien
  108. \brief Permet de ne pas lire un commentaire à la lecture.
  109. \remarks Aucune
  110. */
  111. void skipCommentaire(FILE *fichier);
  112. /*!
  113. \fn void skipligne(FILE *fichier)
  114. \author Brun Nicolas <brunnicola@eisti.eu>
  115. \date 20/01/15
  116. \version 1.0
  117. \param FILE * fichier : Pointeur sur le fichier d'origine.
  118. \return Rien
  119. \brief Permet de ne pas lire la ligne suivante à la lecture.
  120. \remarks Aucune
  121. */
  122. void skipligne(FILE *fichier);
  123. /*!
  124. \fn void creationTabimage(FILE * fichier,char format,Tabimage * picture)
  125. \author Brun Nicolas <brunnicola@eisti.eu>
  126. \date 20/01/15
  127. \version 1.0
  128. \param Tabimage *picture: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  129. \param FILE * fichier : Pointeur sur le fichier d'origine.
  130. \param char format : Caractère correspondant au format dans lequel est encodé l'image.
  131. \return Rien
  132. \brief Permet de lire une image et de stocker celle-ci dans un Tabimage.
  133. \remarks Aucune
  134. */
  135. void creationTabimage(FILE * fichier,char format,Tabimage * picture);
  136. /*!
  137. \fn void afficheImage(Tabimage Picture)
  138. \author Brun Nicolas <brunnicola@eisti.eu>
  139. \date 20/01/15
  140. \version 1.0
  141. \param Tabimage *picture: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  142. \return Rien
  143. \brief Permet d'afficher tous les pixels d'une image.
  144. \remarks Aucune
  145. */
  146. void afficheImage(Tabimage Picture);
  147. /*!
  148. \fn int lireTailleNombre(FILE * fichier)
  149. \author Brun Nicolas <brunnicola@eisti.eu>
  150. \date 20/01/15
  151. \version 1.0
  152. \param FILE * fichier : Pointeur sur le fichier d'origine.
  153. \return Entier
  154. \brief Permet de lire la taille d'un nombre dans un fichier.
  155. \remarks Aucune
  156. */
  157. int lireTailleNombre(FILE * fichier);
  158. /*!
  159. \fn int lireNombre(FILE * fichier,int * nombre)
  160. \author Brun Nicolas <brunnicola@eisti.eu>
  161. \date 20/01/15
  162. \version 1.0
  163. \param FILE * fichier : Pointeur sur le fichier d'origine.
  164. \return Entier
  165. \brief Permet de lire un nombre dans un fichier.
  166. \remarks Aucune
  167. */
  168. int lireNombre(FILE * fichier,int * nombre);
  169. /*!
  170. \fn void makePicture(Tabimage matrix,const char* name,const char * format)
  171. \author Brun Nicolas <brunnicola@eisti.eu>
  172. \date 20/01/15
  173. \version 1.0
  174. \param Tabimage *matrix: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  175. \param const char* name : Tableau de caractères correspondant au nom du fichier de sortie.
  176. \param char * format : Tableau de caractères correspondant au format de sortie .
  177. \return Rien
  178. \brief Permet d'écrire l'image de sortie.
  179. \remarks Aucune
  180. */
  181. void makePicture(Tabimage matrix,const char* name,const char * format);
  182. /*!
  183. \fn void traitementPixel(Pixel *valeur1, Pixel valeur2,int coeff1, int coeff2)
  184. \author Colin Killian <colinkilli@eisti.eu>
  185. \date 20/01/15
  186. \version 1.0
  187. \param Tabimage *matrix: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  188. \param Pixel *valeur1: Un pointeur sur un pixel.
  189. \param Pixel valeur2: Un pixel.
  190. \return Rien
  191. \brief Permet de normaliser deux pixels.
  192. \remarks Aucune
  193. */
  194. void traitementPixel(Pixel *valeur1, Pixel valeur2,int coeff1, int coeff2);
  195. /*!
  196. \fn void definirBord(Point *x,Point *y)
  197. \author Colin Killian <colinkilli@eisti.eu>
  198. \date 20/01/15
  199. \version 1.0
  200. \param Point * x: Un pointeur sur une coordonnée de pixel de l'image.
  201. \param Point * y: Un pointeur sur une coordonnée de pixel de l'image.
  202. \return Rien
  203. \brief Permet d'identifier le point qui est en haut à gauche et en abs à droite.
  204. \remarks Aucune
  205. */
  206. void definirBord(Point *x,Point *y);
  207. /*!
  208. \fn void appliFctBase(Tabimage *picture,Point x,Point y,void (*fonction)(Pixel*))
  209. \author Colin Killian <colinkilli@eisti.eu>
  210. \date 20/01/15
  211. \version 1.0
  212. \param Tabimage *matrix: Un pointeur d'un Tabimage composé des pixels, de la longueur et de la largeur de l'image.
  213. \param Point x: Un point de l'image.
  214. \param Point y: Un point de l'image.
  215. \param void (*fonction)(Pixel*) : un pointeur de fonction avec en entré un pointeur de pixel.
  216. \return Rien
  217. \brief Permet d'appliquer les fonctions de bases à l'image
  218. \remarks Aucune
  219. */
  220. void appliFctBase(Tabimage *picture,Point x,Point y,void (*fonction)(Pixel*));
  221.  
  222. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement