Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

PgGetVideoModeInfo()

Get information about a video mode

Synopsis:

int PgGetVideoModeInfo(
       unsigned short mode_number,
       PgVideoModeInfo_t *mode_info );

Library:

ph

Description:

This function requests detailed information on the video mode specified by the mode_number (taken from a PgVideoModes_t structure — see PgGetVideoModeList()).


Note: You must target this function at a specific card by calling PdSetTargetDevice(). PgGetVideoModeInfo() blocks until the operation is complete.

The information is copied into the PgVideoModeInfo_t structure pointed to by mode_info. This structure has at least the following members:

unsigned short width
The width of the mode in pixels.
unsigned short height
The height of the mode in pixels.
unsigned short bits_per_pixel
The number of bits for each pixel.
unsigned short bytes_per_scanline
The number of bytes for each scan line.
unsigned long type
The image type. This corresponds to the Pg_IMAGE_XXX types — see PhImage_t.
unsigned long mode_capabilities1
General capabilities while in this mode - see below.
unsigned long mode_capabilities2
General 2D hardware capabilities while in this mode - see below.
unsigned long mode_capabilities3
Reserved.
unsigned long mode_capabilities4
Reserved.
unsigned long mode_capabilities5
Reserved.
unsigned long mode_capabilities6
Reserved.
unsigned short refresh_rates[20]
Refresh rates supported in this mode. A zero means you've reached the end of the list.

The general graphics card capabilities (mode_capabilities1) are:

PgVM_MODE_CAP1_OFFSCREEN
This driver supports offscreen mode.
PgVM_MODE_CAP1_2D_ACCEL
The 2D accelerator works in this mode.
PgVM_MODE_CAP1_VIDEO_OVERLAY
Video overlay works in this mode.
PgVM_MODE_CAP1_LINEAR
This mode's memory is linear (not banked switched).
PgVM_MODE_CAP1_DOUBLE_BUFFER
This mode can be double buffered.
PgVM_MODE_CAP1_TRIPLE_BUFFER
This mode can be triple buffered.
PgVM_MODE_CAP1_REFRESH_RATE
This mode supports multiple refresh rates.

The 2D acceleration capabilities (mode_capabilities2) are:

PgVM_MODE_CAP2_BITBLT
Hardware bit-blits.
PgVM_MODE_CAP2_RECTANGLE
Hardware rectangles.
PgVM_MODE_CAP2_LINES
Hardware lines.
PgVM_MODE_CAP2_POLYGONS
Hardware polygons.
PgVM_MODE_CAP2_FULL_ROPS
All 256 raster operations in hardware.
PgVM_MODE_CAP2_PATTERN
Hardware patterns (transparent or not).
PgVM_MODE_CAP2_CHROMA
Hardware chroma key capabilities.
PgVM_MODE_CAP2_ALPHA_BLEND
Hardware alpha blending capabilities.
PgVM_MODE_CAP2_PLANE_MASK
Hardware plane masking.
PgVM_MODE_CAP2_SCALED_BLIT
Hardware accelerated scaled blit
PgVM_MODE_CAP2_DWORD
Accelerated DWORD-aligned data.
PgVM_MODE_CAP2_WORD
Accelerated WORD-aligned data.
PgVM_MODE_CAP2_BYTE
Accelerated BYTE-aligned data.
PgVM_MODE_CAP2_SYSTEM_RAM
Transfers to and from system RAM using the hardware.

Returns:

0
Success.
-1
An error occurred.

Classification:

Photon

Safety:
Interrupt handler No
Signal handler No
Thread No

See also:

PdSetTargetDevice(), PgGetGraphicsHWCaps(), PgGetVideoMode(), PgGetVideoModeList(), PgSetVideoMode()

Video modes in the Raw Drawing and Animation chapter of the Photon Programmer's Guide