Skip to content
Snippets Groups Projects
Unverified Commit 692c0b4e authored by orestis.malaspin's avatar orestis.malaspin
Browse files

added const stuff

parent fbdcd08c
Branches
No related tags found
No related merge requests found
Pipeline #12555 passed
......@@ -26,7 +26,7 @@ toc: false
* Manipulation de tableaux à deux dimensions en `C`.
* Utilisation de `git`.
* Utilisation de librairies externe.
* Utilisation de pointeurs constants.
* Lecture et écriture de fichiers binaires.
* Utilisation de types énumérés.
* Affichage graphique avec la librairie `SDL`.
......@@ -135,7 +135,7 @@ maximale permise. Ainsi si on représente `max` niveaux de gris, le négatif d'u
Il faut implémenter **au minimum** la fonction suivante:
* la fonction `pgm_error pmg_negative(pgm *neg, pgm *orig)`{.C} calculant le négatif de l'image `orig`et la stockant dans `neg` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_negative(pgm *neg, const pgm *const orig)`{.C} calculant le négatif de l'image `orig`et la stockant dans `neg` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
## Les symétries
......@@ -149,9 +149,9 @@ Vous pouvez voir un exemple de ces trois symétries à la @fig:baboon_sym
Il faut implémenter **au minimum** les fonctions suivantes:
* la fonction `pgm_error pmg_symmetry_hori(pgm *sym, pgm *orig)`{.C} calculant la symétrie horizontale de l'image `orig` et la stockant dans `sym` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_symmetry_vert(pgm *sym, pgm *orig)`{.C} calculant la symétrie verticale de l'image `orig` et la stockant dans `sym` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_symmetry_cent(pgm *sym, pgm *orig)`{.C} calculant la symétrie centrale de l'image `orig` et la stockant dans `sym` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_symmetry_hori(pgm *sym, const pgm *const orig)`{.C} calculant la symétrie horizontale de l'image `orig` et la stockant dans `sym` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_symmetry_vert(pgm *sym, const pgm *const orig)`{.C} calculant la symétrie verticale de l'image `orig` et la stockant dans `sym` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_symmetry_cent(pgm *sym, const pgm *const orig)`{.C} calculant la symétrie centrale de l'image `orig` et la stockant dans `sym` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
## Le photomaton
......@@ -173,7 +173,7 @@ il faut examiner ce qui se passe sur la première ligne.
Il faut implémenter **au minimum** la fonction suivante:
* la fonction `pgm_error pmg_photomaton(pgm *photomaton, pgm *orig)`{.C} calculant l'effet photomaton de l'image `orig` et la stockant dans `photomaton` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_photomaton(pgm *photomaton, const pgm *const orig)`{.C} calculant l'effet photomaton de l'image `orig` et la stockant dans `photomaton` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
## Rogner
......@@ -186,7 +186,7 @@ des pixels de l'image d'origine. Un exemple peut se trouver sur la @fig:baboon_c
Il faut implémenter **au minimum** la fonction suivante:
* la fonction `pgm_error pmg_crop(pgm *crop, pgm *orig, int32_t x0, int32_t x1, int32_t y0, int32_t y1)`{.C} calculant la sous-image de `orig` aux coordonnées `x0` à `x1` (non-inclu), et `y0` à `y1` (non-inclu). Le résultat est stocké dans `crop` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_crop(pgm *crop, const pgm *const orig, int32_t x0, int32_t x1, int32_t y0, int32_t y1)`{.C} calculant la sous-image de `orig` aux coordonnées `x0` à `x1` (non-inclu), et `y0` à `y1` (non-inclu). Le résultat est stocké dans `crop` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
## Convolution et filtres [^1]
......@@ -284,7 +284,7 @@ tronquer le nombre obtenu pour en fait un entier.
Il faut implémenter **au minimum** la fonction suivante:
* la fonction `pgm_error pmg_conv(pgm *conv, pgm *orig, matrix *kernel)`{.C} calculant la convolution entre `orig` et le noyau `kernel`. Le résultat est stocké dans `conv` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
* la fonction `pgm_error pmg_conv(pgm *conv, const pgm *const orig, const matrix *const kernel)`{.C} calculant la convolution entre `orig` et le noyau `kernel`. Le résultat est stocké dans `conv` (qui également allouée dans cette fonction). L'image `orig` n'est pas modifiée. Cette fonction retourne un `pgm_error`.
## Afficher l'image avec la librairie SDL
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment