BITMAP(3)

NAME
BITMAP

SYNOPSIS
#include <allegro.h>

typedef struct BITMAP

DESCRIPTION
   int w, h;               - size of the bitmap in pixels
   int clip;               - non-zero if clipping is turned on
   int cl, cr, ct, cb;     - clip rectangle left, right, top, and bottom
   unsigned char *line[];  - pointers to the start of each line

There is some other stuff in the structure as well, but it is liable to change and you shouldn't use anything except the above. The w and h fields can be used to obtain the size of an existing bitmap:
   bmp = load_bitmap("file.bmp", pal);
   allegro_message("Bitmap size: (%dx%d)\n", bmp->w, bmp->h);

The clipping rectangle is inclusive on the left and top (0 allows drawing to position 0) but exclusive on the right and bottom (10 allows drawing to position 9, but not to 10). Note this is not the same format as you pass to set_clip(), which takes inclusive coordinates for all four corners. All the values of this structure should be regarded as read-only, with the exception of the line field, whose access is described in depth in the "Direct access to video memory" section of the manual. If you want to modify the clipping region, please refrain from changing this structure, use set_clip() instead.

SEE ALSO
create_bitmap(3), set_clip(3), bitmap_color_depth(3), RLE_SPRITE(3), COMPILED_SPRITE(3)