added documentation
This commit is contained in:
parent
90d4b0cfc3
commit
71faf2cfd8
32
src/common.c
32
src/common.c
@ -1,14 +1,36 @@
|
||||
#include "common.h"
|
||||
#include "ppm.h"
|
||||
/**
|
||||
* \file common.c
|
||||
* \brief Implémentation de la (dé)compression d’images
|
||||
*/
|
||||
|
||||
#include "common.h"
|
||||
|
||||
/**
|
||||
* Cette fonction permet d’évaluer si le pixel passé en argument est éligible à
|
||||
* la zone passée également en argument.
|
||||
*
|
||||
* \param[in] t_pixel Pointeur vers le pixel dont l’éligibilité est testée
|
||||
* \param[in] t_zone Zone à laquelle le pixel est éligible ou non
|
||||
* \return Valeur booléenne, `true` si le pixel est éligible, `false` sinon
|
||||
*/
|
||||
bool sameColor(Pixel_t t_pixel, Zone_t t_zone) {
|
||||
return t_pixel->r == t_zone->r && t_pixel->g == t_zone->g &&
|
||||
t_pixel->b == t_zone->b;
|
||||
}
|
||||
|
||||
/* Adds a pixel to a zone, since the pixel isn't in a zone, then it isn't
|
||||
part of a segment either, hence we can confidently add pixels next to the
|
||||
original as parts of the segment and add the segment itself to the zone */
|
||||
/**
|
||||
* Ajoute un pixel à la zone passé en argument si le pixel à l’index passé en
|
||||
* argument est éligible à la zone. Si un pixel n’a pas encore été visité, cela
|
||||
* veut dire également qu’il ne fait partie d’aucun segment, il sera donc
|
||||
* ajouté à un nouveau segment auquel seront rajoutés tous les pixels connexes
|
||||
* éligibles à la zone. Ensuite, le segment est ajouté à la zone, et la
|
||||
* fonction actuelle est appelée sur tous les pixels supérieurs et inférieurs
|
||||
* aux pixels du segment.
|
||||
*
|
||||
* \param[in] t_img Image contenant les pixels explorés
|
||||
* \param[in] t_idx Index du pixel actuel dans l’image `t_img`
|
||||
* \param[out] t_zone Zone à laquelle sera potentiellement ajouté le pixel
|
||||
*/
|
||||
void addPixelToSelectedZone(Image_t t_img, int t_idx, Zone_t t_zone) {
|
||||
Pixel_t current_pixel;
|
||||
int xd, xg, y = t_idx / (int)t_img->x;
|
||||
|
10
src/common.h
10
src/common.h
@ -1,8 +1,16 @@
|
||||
/**
|
||||
* \file common.h
|
||||
* \brief Déclaration pour la (dé)compression d’images
|
||||
*/
|
||||
|
||||
#ifndef COMMON_H
|
||||
#define COMMON_H
|
||||
|
||||
#include "utilities.h"
|
||||
#include "ppm.h"
|
||||
|
||||
/// Teste l’éligibilité d’un pixel à une zone
|
||||
bool sameColor(Pixel_t, Zone_t);
|
||||
/// Ajoute un pixel et ses pixels connexes à une zone
|
||||
void addPixelToSelectedZone(Image_t t_img, int t_idx, Zone_t t_zone);
|
||||
void chooseZoneForPixel(Image_t t_img, int t_idx, darray_t zones);
|
||||
darray_t imgToZones(Image_t t_img);
|
||||
|
Loading…
Reference in New Issue
Block a user