Man Linux: Main Page and Category List

NAME

       request_video_bitmap - Triple buffering page flip request. Allegro game
       programming library.

SYNOPSIS

       #include <allegro.h>

       int request_video_bitmap(BITMAP *bitmap);

DESCRIPTION

       This function is used for triple buffering. It requests a page flip  to
       display  the  specified  video  bitmap  object, but returns immediately
       rather than waiting for a retrace. The flip will then take place during
       the  next  vertical retrace, but you can carry on running other code in
       the meantime and use the poll_scroll() routine to detect when the  flip
       has  actually taken place. Triple buffering is only possible on certain
       hardware: see the comments about request_scroll(). Example:

          int current_page;
          BITMAP *video_page[3];
          ...
          /* Create pages for page flipping */
          video_page[0] = create_video_bitmap(SCREEN_W, SCREEN_H);
          video_page[1] = create_video_bitmap(SCREEN_W, SCREEN_H);
          video_page[2] = create_video_bitmap(SCREEN_W, SCREEN_H);
          current_page = 0;
          ...
          /* draw the screen and flip pages */
          draw_screen(video_page[current_page]);
          do {
          } while (poll_scroll());
          request_video_bitmap(video_page[current_page]);
          current_page = (current_page+1)%3;
          ...

RETURN VALUE

       Returns zero on success and non-zero on failure.

SEE ALSO

       poll_scroll(3alleg), request_scroll(3alleg),  gfx_capabilities(3alleg),
       create_video_bitmap(3alleg),   scroll_screen(3alleg),   ex3buf(3alleg),
       exupdate(3alleg)