/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        C O M P R E S S I O N / D E C O M P R E S S I O N   " R U N - L E N G T H   E N C O D I N G   01 "                         */
/*        E N   L O N G U E U R   F I X E  :                                                                                         */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xrC/CompressionDeCompressionRunLengthEncoding.01$vv$I' :                                                       */
/*                                                                                                                                   */
/*                    Jean-Francois Colonna (LACTAMME, 20130925113017).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

#include  "CompressionDeCompressionRunLengthEncodingGeneral.01.vv.I"

#define   ENREGISTREMENT_D_UNE_SUITE_DE_REPETITIONS                                                                                     \
                    {                                                                                                                   \
                    ImageCompactee[JImageCompactee+0]=CompteurRepetitions;                                                              \
                    ImageCompactee[JImageCompactee+1]=CaracterePrecedent;                                                               \
                    JImageCompactee=JImageCompactee+2;                                                                                  \
                    }

#define   COMPRESSION_RUN_LENGTH_ENCODING_01_DU_FICHIER_R                                                                               \
                    {                                                                                                                   \
                    COMPRESSION_RUN_LENGTH_ENCODING_DU_FICHIER_R(2,(CompteurRepetitions < BLANC));                                      \
                    }

#define   DECOMPRESSION_RUN_LENGTH_ENCODING_01_DU_FICHIER_R                                                                             \
                    {                                                                                                                   \
                    TypeImage *ImageCompactee=malloc(longueur);                                                                         \
                    TypeImage DEFINITION_IMAGE(ImageDecompactee,dimY,dimX);                                                             \
                                                                                                                                        \
                    long      int       DimensionImageEffective=0;                                                                      \
                    long      int       JImageADeCompacter;                                                                             \
                                                                                                                                        \
                    LECTURE_FICHIER(ImageCompactee,longueur);                                                                           \
                                                                                                                                        \
                    x=Xmin;                                                                                                             \
                    y=Ymin;                                                                                                             \
                                                                                                                                        \
                    for       (JImageADeCompacter=0 ; JImageADeCompacter < NombreOctetsLus ; JImageADeCompacter=JImageADeCompacter+2)   \
                              {                                                                                                         \
                              long      int       compteur;                                                                             \
                                                                                                                                        \
                              for       (compteur=1 ; compteur <= ImageCompactee[JImageADeCompacter+0] ; compteur++)                    \
                                        {                                                                                               \
                                        GENERATION_D_UNE_SUITE_DE_REPETITIONS(ImageCompactee[JImageADeCompacter+1]);                    \
                                        }                                                                                               \
                              }                                                                                                         \
                                                                                                                                        \
                    if        (DimensionImageEffective < DimImages)                                                                     \
                              {                                                                                                         \
                              fprintf(stderr,"Pas assez de points generes lors du decompactage RLE1.\n");                               \
                              }                                                                                                         \
                    else                                                                                                                \
                              {                                                                                                         \
                              if        (DimensionImageEffective > DimImages)                                                           \
                                        {                                                                                               \
                                        fprintf(stderr,"Trop de points generes lors du decompactage RLE1.\n");                          \
                                        }                                                                                               \
                              else                                                                                                      \
                                        {                                                                                               \
                                        }                                                                                               \
                              }                                                                                                         \
                                                                                                                                        \
                    ECRITURE_FICHIER(ImageDecompactee,DimensionImageEffective);                                                         \
                                                                                                                                        \
                    free(ImageCompactee);                                                                                               \
                    }



Copyright © Jean-François Colonna, 2013-2021.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2013-2021.