gf_surface_get_source()

Функция позволяет определить ассоциированный с поверхностью источник памяти

Прототип:

#include <gf/gf.h>
int gf_surface_get_source( gf_surface_t surface,
unsigned *source );

Аргументы:

surface
Дескриптор поверхности, для которой необходимо определить источник памяти.
source
Определенный источник памяти (будет рассмотран далее).

Библиотека:

gf

Описание:

Функция позволяет определить источник памяти, ассоциированной с поверхностью surface. При успешном завершении функции в переменную source возвращается информация, позволяющая определить источник памяти на основе которого создана поверхность. Определить размер памяти, который ассоциирован с источником информации, можно с помощью функции gf_surface_get_source_size().

Источник памяти может быть интерпретирован следующим образом:


Note: Необходимо отметить, что современные графическое контроллеры позволяют различыми способами адресовать системную память центрального процессора. Скорость доступа графического контроллера к этой памяти обычно существенно ниже. Механизмы адресации системной памяти включают как таблицы трансляции адресов графического контроллера (от англ.: "Graphics Translation Table" - "GTT"), так и механизмы чтения системной памяти графического драйвера. Данная функция не позволяет однозначно отделить адресуемую системную память от системной памяти, таковаой не являющейся.

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

GF_ERR_OK
Успешное завершение.
GF_ERR_PARM
Передан некорректный дескриптор поверхности или указатель на адрес буфера, предназначенного для возвращения информации об источнике памяти
GF_ERR_SHMEM
Ошибка доступа к видео памяти

Примеры использования:

Определение источника памяти произвольной поверхности.

gf_surface_t surface;
unsigned source;
if ( gf_surface_get_source( surface, &source ) != GF_ERR_OK )
{
printf( "gf_surface_get_source() failed\n" );
return (-1);
}
if ( source )
{
printf( "surface is in video memory aperture\n" );
return (0);
}

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

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

Поддерживается, начиная с ЗОСРВ «Нейтрино» редакции 2020

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

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

gf_surface_get_source_size()




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