gf_display_set_mode()

Установка видео-режима для дисплея

Прототип:

#include <gf/gf.h>
int gf_display_set_mode( gf_display_t display,
int xres,
int yres,
int refresh,
gf_format_t format,
unsigned flags );

Аргументы:

display
Дескриптор дисплея, для которого устанавливается режим. Дескриптор должен быть возвращен функцией gf_display_attach().
xres,yres
Устанавливаемое разрешение экрана.
refresh
Устанавливаемая частота обновления экрана.
format
Формат пикселей. Данный параметр влияет только на основной слой контроллера дисплеев.
flags
Флаги. В настоящий момент не поддерживаются, следует передавать значение 0.

Библиотека:

gf

Описание:

Данная функция устанавливает видео-режима для дисплея. В зависимости от внутренней логики конкретного графического драйвера, ряд поверхностей могут быть в этот момент освобождены. Переключение режима может оказать прямое или косвенное влияние на большое число приложений в системе.


Warning: Потоки не должны вызывать эту функцию между вызовами gf_draw_begin() и gf_draw_end(). В противном случае возможна взаимная блокировка потоков.

Разработчики приложений должны самостоятельно убедиться, что все приложения, ведут себя корректно при изменении параметров на работающем дисплее. Переключение режимов может быть выполнено одним из двух способов:

  1. IPC уведомления.Приложение, инициирующее переключение режимов, может уведомить других клиентов средствами системных механизмов IPC. Получив уведомление, приложения должны пересоздать все свои поверхности в соответствии с новыми параметрами дисплея.
  2. Приложения могут определить, что поверхность была уничтожена при попытке рендеринга в нее. При 2D рендеринге в рассматриваемом случае функция gf_draw_begin() возвратит GF_ERR_SURFDESTROYED.


Note: Когда освобождается поверхность, любой слой ее использующий автоматически отключается и должен быть повторно включен приложением. Это позволяет избежать временного отображения артефактов на экране.

Если Photon является единственным графическим окружением в системе, целесообразно инициировать переключение видео-режима его встроенными средствами. Это позволит гарантировать, что Photon корректно обработает данную процедуру.

Возвращаемое значение:

GF_ERR_OK
Успешное завершение.
GF_ERR_PARM
Указанный параметр или их сочетание не поддерживается, либо значение параметра display равно NULL

Классификация:

Графическая подсистема ЗОСРВ «Нейтрино», Graphics Framework

Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Да

Тематические ссылки:

gf_format_t, gf_display_query_mode(), gf_draw_begin()




Предыдущий раздел: GF API