.\" Copyright (c) 1986, 1987, University of Utah .TH RLE_RAW_ALLOC 3 2/2/87 3 .UC 4 .SH NAME .HP rle_raw_alloc \- Allocate memory for rle_getraw or rle_putraw. .PD 0 .LP rle_raw_free \- free memory allocated by rle_raw_alloc. .PD .SH SYNOPSIS .B #include .br .B #include .sp .B rle_raw_alloc( the_hdr, scanp, nrawp ) .br .B rle_hdr * the_hdr; .br .B rle_op *** scanp; .br .B int ** nrawp; .sp .B rle_raw_free( the_hdr, scanp, nrawp ) .br .B rle_hdr * the_hdr; .br .B rle_op ** scanp; .br .B int * nrawp; .SH DESCRIPTION The function .I rle_raw_alloc is provided to make it easier to allocate storage for use by the RLE "raw" functions. It examines the .I the_hdr structure provided and return (via its other arguments) newly allocated space suitable for reading from or writing to an RLE file described by the .I the_hdr structure. .I Rle_raw_alloc allocates .RI ( the_hdr \(-> xmax \- .IR the_hdr \(-> xmin + 1) elements per channel, which is more than should ever be needed for a valid \fIRLE\fP file. .I Rle_raw_free should be used to free memory allocated by .IR rle_raw_alloc (3). The arguments are pointers to the allocated storage. This is distinct from .IR rle_freeraw (3), which only frees pixel arrays referenced by individual .I rle_op structures, while .I rle_raw_free frees the storage consumed by the arrays of pointers and .I rle_op structures. In fact, .IR rle_freeraw should be called before calling .IR rle_raw_free . .SH SEE ALSO .na .IR rle_hdr (3), .IR rle_op (3), .IR rle_putraw (3), .IR rle_getraw (3), .IR rle_freeraw (3), .IR librle (3), .IR RLE (5). .ad b .SH AUTHOR Spencer W. Thomas .br University of Utah .SH BUGS The naming confusion between .I rle_freeraw and .I rle_raw_free is unfortunate.