Подключение к дисплею графического устрйства
#include <gf/gf.h>int gf_display_attach( gf_display_t *pdisplay,gf_dev_t gdev,unsigned display_index,gf_display_info_t *info );
gf_display_t
, который функция заполняет дескриптором графического дисплея.0
.NULL
, если эта информация не требуется.gf
Данная функция выполняет подключение к дисплею графического устройства. Она предоставляет дескриптор, позволяющий безопасно использовать дисплей в потоке. Актуальные параметры для каждого дисплея графического устройства настраиваются с помощью конфигурационного файла /etc/system/config/display.conf
и поддерживаются сервером io-display.
Устройство обычно обслуживает один дисплей, однако некоторое аппаратное обеспечение допускает мультидисплейную конфигурацию. К каждому из этих дисплеев можно подключиться с помощью данной функции. Имея отдельный дескриптор для каждого дисплея, можно адресовать и управлять ими в индивидуальном порядке.
/dev/io-display
. Следует проверить, запущен ли в настоящий момент сервер io-display. Вывод sloginfo может содержать дополнительную информацию.NULL
.Подключаемся к устройству, а затем используем структуру с информацией об устройстве gf_dev_info_t для привязки к дисплею устройства:
gf_dev_t gdev;gf_dev_info_t gdev_info;gf_display_t display;gf_display_info_t display_info;int i;if ( gf_dev_attach( &gdev, GF_DEVICE_INDEX( 0 ), &gdev_info ) != GF_ERR_OK ){printf( "gf_dev_attach() failed\n" );return (-1);}printf( "Number of displays: %d\n", gdev_info.ndisplays );for ( i = gdev_info.ndisplays; i; ){printf( "Display %d: ", i-- );if ( gf_display_attach( &display, gdev, i, &display_info ) == GF_ERR_OK ){printf( "%dX%d, refresh = %dHz\n", display_info.xres, display_info.yres, display_info.refresh );printf( "Number of layers: %d\n", display_info.nlayers );} else {printf( "gf_display_attach() failed\n" );}}
Графическая подсистема ЗОСРВ «Нейтрино», Graphics Framework
gf_dev_detach(), gf_display_set_layer_order()
Предыдущий раздел: GF API