Retrieves type information for a specific graphics card. allegro game programming library.
#include <allegro.h>
int get_gfx_mode_type(int graphics_card);
This function lets you determine the types of operating modes that a specific graphics card driver operates in. It will tell you whether it is a windowed, fullscreen, definitely windowed or fullscreen, and/or a magic driver.
The value returned is a bitfield consisting of these fields:
GFX_TYPE_UNKNOWN GFX_TYPE_WINDOWED GFX_TYPE_FULLSCREEN GFX_TYPE_DEFINITE GFX_TYPE_MAGIC
The return value will only be equivalent to GFX_TYPE_UNKNOWN when it is a driver unrecognized on that platform, or it is a bogus value. Test for the other types by using a bitwise AND. If the driver is windowed or fullscreen, it will also have the definite flag set. For example,
int gfx_type = get_gfx_mode_type(GFX_AUTODETECT_WINDOWED);
gfx_type would have the GFX_TYPE_WINDOWED, GFX_TYPE_DEFINITE, and GFX_TYPE_MAGIC flags set.
Allegro needs to be initialized first.
Example:
/* Accept the use of only windowed drivers in our selection dialog */ int accept_windowed(int card , int w , int h , int color_depth) { if (get_gfx_mode_type(card) & GFX_TYPE_WINDOWED) return 0; return 1; } /* In main: */ gfx_mode_select_filter(&card, &w, &h, &color_depth, accept_windowed);
Returns a bitfield describing the graphics mode type.
gfx_mode_select_filter(3alleg4), get_gfx_mode(3alleg4), set_gfx_mode(3alleg4), is_windowed_mode(3alleg4)