[ Содержание ] | [ Перечень функций ] |
Status XAllocColorPlanes(display, colormap, contig, pixels_return, ncolors, nreds, ngreens, nblues, rmask_return, gmask_return, bmask_return) Display *display; Colormap colormap; Bool contig; unsigned long pixels_return[]; int ncolors; int nreds, ngreens, nblues; unsigned long *rmask_return, *gmask_return, *bmask_return;
АРГУМЕНТЫ
Эта функция выделяет память под запрошенное количество ячееек в палитре colormap, распределяя эти ячейки по цветовым плоскостям. Содержимое ячеек не заполняется, а устанавливается лишь атрибут "доступно для записи", что блокирует доступ к этим ячейкам из других программ.
Количество запрашиваемых индексов ncolors должно быть больше нуля. Количество запрашиваемых цветовых плоскостей nreds, ngreens и nblues должно быть не меньше нуля, иначе появится ошибка BadValue.
Обращения к разным плоскостям в палитре происходит путем просто указания индекса в палитре (обращение к нулевой плоскости) или логического сложения индекса в палитре и одной или несколькими масками плоскостей.
Таким образом при выделении ненулевого количества плоскостей, реальное количество выделямых ячеек памяти вычисляется следующим образом: ncolors*2(nreds*ngreens*nblues). Однако среди выделяемых ячеек будет только ncolors*2nreds ячеек, содержащих красный цвет, ncolors*2ngreens ячеек, содержащих зеленый цвет, ncolors*2nbluess ячеек, содержащий синий цвет. Это правило работает даже для визуального класса PseudoColor.
Когда производится операция по изменению данных цвета по индексу (см. функции XStoreColors, XStoreColor и XStoreNamedColor), то в соответствии с масками происходит преобразование индекса и обновление разных составляющих цветов в разных ячейках палитры.
Эта функция возвращает ненулевое значение статуса в случае успешного своего выполнения, или нулевое значение, если возникла какая-то проблема.
Функция XAllocColorPlanes может генерировать следующие ошибки:
См. также: XAllocColorCells, XAllocNamedColor, XAllocColor, XFreeColors, XQueryColor, XStoreColors, XCreateColormap.
[ Содержание ] | [ Перечень функций ] |