69 assert(source !=
NULL);
73 unsigned char const * sptr = (
unsigned char const *) source;
74 unsigned char * dptr = (
unsigned char *)dest;
87 while (sptr[runcount] ==
'\0' && runcount <= length) {
94 runcount =
MIN(runcount, 255);
97 *dptr++ = (
unsigned char)runcount;
149 assert(source !=
NULL);
157 unsigned short * sizeptr = (
unsigned short *)dest;
158 int complen =
Compress(source, sizeptr+1, length) +
sizeof(short);
159 *sizeptr = (
unsigned short)complen;
192 assert(source !=
NULL);
193 assert(dest !=
NULL);
196 unsigned char * dptr = (
unsigned char *)dest;
197 unsigned char const * sptr = (
unsigned char const *)source;
208 unsigned char value = *sptr++;
211 int outlen = *sptr++;
226 return(dptr - (
unsigned char const *)dest);
250 assert(source !=
NULL);
251 assert(dest !=
NULL);
253 unsigned short const * sptr = (
unsigned short const *)source;
255 int datalen = *sptr++;
260 return(
Decompress(sptr, dest, datalen -
sizeof(
short)));
int Compress(void const *source, void *dest, int length) const
int Decompress(void const *source, void *dest, int length) const
int Line_Compress(void const *source, void *dest, int length) const
int Line_Decompress(void const *source, void *dest) const