Открыть главное меню

Изменения

AhiSurfAlloc

2526 байт добавлено, 12:52, 9 января 2011
Нет описания правки
== Объявление ==
'''<tt>UINT32 AhiSurfAlloc( AHIDEVCONTEXT_T devCx, AHISURFACE_T *surf, AHIPOINT_T *size, AHIPIXFMT_T pixFormat, UINT32 flags );</tt>

== Описание ==
Выделяет поверхность указанного размера из видеопамяти

== Параметры ==
#'''AHIDEVCONTEXT_T devCx
#:Контекст устройства
#'''AHISURFACE_T *surf
#:Указатель на переменную, в которой будет сохранен идентификатор поверхности после выполнения функции
#'''AHIPOINT_T *size
#:Указатель на структуру, содержащую размеры выделяемой поверхности
#'''AHIPIXFMT_T pixFormat
#:[[#Форматы пикселей|Формат пикселей]] выделяемой поверхности. Ниже приведены возможные значения.
#'''UINT32 flags
#:[[#Флаги|Флаги]]. Ниже приведены возможные значения.

== Форматы пикселей ==
{|style="text-align:left" cellspacing="1"
!Формат
!
!Значение
|-
|AHIFMT_1BPP
|=
|0
|-
|AHIFMT_4BPP
|=
|1
|-
|AHIFMT_8BPP
|=
|2
|-
|AHIFMT_16BPP_444
|=
|3
|-
|AHIFMT_16BPP_555
|=
|4
|-
|AHIFMT_16BPP_565
|=
|5
|}

== Флаги ==
{|style="text-align:left" cellspacing="1"
!Флаг
!
!Значение
!
!Описание
|-
|AHIFLAG_DISPLAYPIXFMT
|=
|0x00000002
|width="48px"|
|Формат пикселей будет использован такой же, как у отображаемой поверхности
|-
|AHIFLAG_SYSMEMORY
|=
|0x00000008
|
|Поверхность будет выделена из системной памяти
|-
|AHIFLAG_EXTMEMORY
|=
|0x00000020
|
|Поверхность будет выделена из внешней памяти
|-
|AHIFLAG_INTMEMORY
|=
|0x00000040
|
|Поверхность будет выделена из внутренней памяти
|}

== Результат ==
#'''UINT32
#:Результат выделения поверхности, RESULT_OK если ошибок нет

== Пример ==
<pre>
UINT32 result;
AHIDEVCONTEXT_T uCtx;
AHISURFACE_T surf;
AHIPOINT_T pt;

pt.x = 48;
pt.y = 48;

...

result = AhiSurfAlloc(uCtx, &surf, &pt, AHIFMT_16BPP_565, AHIFLAG_EXTMEMORY);

</pre>

== См. также ==
[[AhiDevOpen]]

[[Категория:Функции AHI]]
46
правок