X-Git-Url: https://git.llucax.com/z.facultad/75.06/jacu.git/blobdiff_plain/d69c7c58de649932f607cbfb6e7f44a1364078f5..7e0696972e32e6cab306020b0fca853810087211:/src/zerogrouping/zerogrouping.h?ds=sidebyside diff --git a/src/zerogrouping/zerogrouping.h b/src/zerogrouping/zerogrouping.h index 2153bbf..e672c89 100644 --- a/src/zerogrouping/zerogrouping.h +++ b/src/zerogrouping/zerogrouping.h @@ -22,7 +22,7 @@ * Autores: Leandro Lucarella *---------------------------------------------------------------------------- * - * $Id: vfile.h 742 2004-06-20 22:34:13Z llucare $ + * $Id$ * */ @@ -39,12 +39,27 @@ * */ +/** Estado del agrupador de ceros. */ +typedef struct +{ + unsigned char count; /**< Cantidad de ceros acumulados. */ + int in_zero; /**< Indica si está en una serie de ceros. */ +} +ZG; + +/** Inicializa un agrupador de ceros. */ +void zg_init(ZG* zg); + /** Agrupa varios ceros seguis en 2 bytes, el primero es cero y el segundo la * cantidad. FIXME */ -size_t zg_group(char* dst, char *src, size_t size); +size_t zg_group(ZG* zg, unsigned char *dst, unsigned char src); + +/** Termina de obtener ceros agrupados por zg_group(), si los hubiera. + * FIXME */ +size_t zg_group_finish(ZG* zg, unsigned char *dst); /** Vuelve al original. FIXME */ -size_t zg_ungroup(char *buffer, size_t size); +size_t zg_ungroup(ZG* zg, unsigned char *dst, unsigned char src); #endif /* _JACU_ZG_H_ */