screen_flush_blits()

Flush all the blits issued.

Synopsis:

#include <screen/screen.h>
 
int screen_flush_blits(screen_context_t ctx,
                       int flags)

Arguments:

ctx

A connection to Screen

flags

A flag used by the mutex. Specify SCREEN_WAIT_IDLE if the function is required to block until all the blits have been completed.

Library:

libscreen

Description:

Function Type: Flushing Execution

This function flushes all delayed blits and fills since the last call to this function, or since the last call to screen_post_window(). Note that this is a flush of delayed blits and does not imply a flush of the command buffer. The blits will start executing shortly after you call the function. The blits may not be complete when the function returns, unless the SCREEN_WAIT_IDLE flag is set. This function has no effect on other non-blit delayed calls. The screen_post_window() function performs an implicit flush of any pending blits. The content that is to be presented via the call to screen_post_window() is most likely the result of any pending blit operations completing.

The connection to Screen must have been acquired with the function screen_create_context().

Returns:

0 if the blit buffer was flushed, or -1 if an error occurred (errno is set; refer to /usr/include/errno.h for more details). Note that the error may also have been caused by any delayed execution function that's just been flushed.