added documentation

This commit is contained in:
Phuntsok Drak-pa 2018-11-12 14:25:24 +01:00
parent 90d4b0cfc3
commit 71faf2cfd8
2 changed files with 36 additions and 6 deletions

View File

@ -1,14 +1,36 @@
#include "common.h"
#include "ppm.h"
/**
* \file common.c
* \brief Implémentation de la ()compression dimages
*/
#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 à lindex passé en
* argument est éligible à la zone. Si un pixel na pas encore é visité, cela
* veut dire également quil ne fait partie daucun 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 limage `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;

View File

@ -1,8 +1,16 @@
/**
* \file common.h
* \brief Déclaration pour la ()compression dimages
*/
#ifndef COMMON_H
#define COMMON_H
#include "utilities.h"
#include "ppm.h"
/// Teste léligibilité dun 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);