Lines Matching refs:ximage

436  * Deallocates the memory associated with the ximage data structure.
441 static int _XDestroyImage (XImage *ximage)
443 Xfree(ximage->data);
444 Xfree(ximage->obdata);
445 Xfree(ximage);
477 register XImage *ximage,
489 if ((ximage->bits_per_pixel | ximage->depth) == 1) {
490 src = &ximage->data[XYINDEX(x, y, ximage)];
493 for (i = ximage->bitmap_unit >> 3; --i >= 0; ) *dst++ = *src++;
494 XYNORMALIZE(&pixel, ximage);
495 bits = (x + ximage->xoffset) % ximage->bitmap_unit;
497 } else if (ximage->format == XYPixmap) {
500 nbytes = ximage->bitmap_unit >> 3;
501 for (i = ximage->depth; --i >= 0; ) {
502 src = &ximage->data[XYINDEX(x, y, ximage)+ plane];
506 XYNORMALIZE(&px, ximage);
507 bits = (x + ximage->xoffset) % ximage->bitmap_unit;
510 plane = plane + (ximage->bytes_per_line * ximage->height);
512 } else if (ximage->format == ZPixmap) {
513 src = &ximage->data[ZINDEX(x, y, ximage)];
516 for (i = (ximage->bits_per_pixel + 7) >> 3; --i >= 0; )
518 ZNORMALIZE(&px, ximage);
522 if (ximage->bits_per_pixel == 4) {
531 if (ximage->bits_per_pixel == ximage->depth)
534 return (pixel & low_bits_table[ximage->depth]);
540 register XImage *ximage,
547 if ((ximage->format == ZPixmap) && (ximage->bits_per_pixel == 32)) {
548 addr = &((unsigned char *)ximage->data)
549 [y * ximage->bytes_per_line + (x << 2)];
550 if (*((const char *)&byteorderpixel) == ximage->byte_order)
552 else if (ximage->byte_order == MSBFirst)
562 if (ximage->depth != 32)
563 pixel &= low_bits_table[ximage->depth];
566 _XInitImageFuncPtrs(ximage);
567 return XGetPixel(ximage, x, y);
572 register XImage *ximage,
579 if ((ximage->format == ZPixmap) && (ximage->bits_per_pixel == 16)) {
580 addr = &((unsigned char *)ximage->data)
581 [y * ximage->bytes_per_line + (x << 1)];
582 if (ximage->byte_order == MSBFirst)
586 if (ximage->depth != 16)
587 pixel &= low_bits_table[ximage->depth];
590 _XInitImageFuncPtrs(ximage);
591 return XGetPixel(ximage, x, y);
596 register XImage *ximage,
602 if ((ximage->format == ZPixmap) && (ximage->bits_per_pixel == 8)) {
603 pixel = ((unsigned char *)ximage->data)
604 [y * ximage->bytes_per_line + x];
605 if (ximage->depth != 8)
606 pixel &= low_bits_table[ximage->depth];
609 _XInitImageFuncPtrs(ximage);
610 return XGetPixel(ximage, x, y);
615 register XImage *ximage,
622 if (((ximage->bits_per_pixel | ximage->depth) == 1) &&
623 (ximage->byte_order == ximage->bitmap_bit_order)) {
624 xoff = x + ximage->xoffset;
625 yoff = y * ximage->bytes_per_line + (xoff >> 3);
627 if (ximage->bitmap_bit_order == MSBFirst)
631 return (ximage->data[yoff] & bit) ? 1 : 0;
633 _XInitImageFuncPtrs(ximage);
634 return XGetPixel(ximage, x, y);
655 register XImage *ximage,
668 if (ximage->depth == 4)
673 if ((ximage->bits_per_pixel | ximage->depth) == 1) {
674 src = &ximage->data[XYINDEX(x, y, ximage)];
677 nbytes = ximage->bitmap_unit >> 3;
679 XYNORMALIZE(&px, ximage);
680 i = ((x + ximage->xoffset) % ximage->bitmap_unit);
682 XYNORMALIZE(&px, ximage);
684 dst = &ximage->data[XYINDEX(x, y, ximage)];
686 } else if (ximage->format == XYPixmap) {
687 plane = (ximage->bytes_per_line * ximage->height) *
688 (ximage->depth - 1); /* do least signif plane 1st */
689 nbytes = ximage->bitmap_unit >> 3;
690 for (j = ximage->depth; --j >= 0; ) {
691 src = &ximage->data[XYINDEX(x, y, ximage) + plane];
695 XYNORMALIZE(&px, ximage);
696 i = ((x + ximage->xoffset) % ximage->bitmap_unit);
698 XYNORMALIZE(&px, ximage);
700 dst = &ximage->data[XYINDEX(x, y, ximage) + plane];
705 plane = plane - (ximage->bytes_per_line * ximage->height);
707 } else if (ximage->format == ZPixmap) {
708 src = &ximage->data[ZINDEX(x, y, ximage)];
711 nbytes = (ximage->bits_per_pixel + 7) >> 3;
713 ZNORMALIZE(&px, ximage);
715 (x * ximage->bits_per_pixel) & 7,
716 ximage->bits_per_pixel, (char *)&px);
717 ZNORMALIZE(&px, ximage);
719 dst = &ximage->data[ZINDEX(x, y, ximage)];
728 register XImage *ximage,
735 if ((ximage->format == ZPixmap) && (ximage->bits_per_pixel == 32)) {
736 addr = &((unsigned char *)ximage->data)
737 [y * ximage->bytes_per_line + (x << 2)];
738 if (*((const char *)&byteorderpixel) == ximage->byte_order)
740 else if (ximage->byte_order == MSBFirst) {
753 _XInitImageFuncPtrs(ximage);
754 return XPutPixel(ximage, x, y, pixel);
759 register XImage *ximage,
766 if ((ximage->format == ZPixmap) && (ximage->bits_per_pixel == 16)) {
767 addr = &((unsigned char *)ximage->data)
768 [y * ximage->bytes_per_line + (x << 1)];
769 if (ximage->byte_order == MSBFirst) {
778 _XInitImageFuncPtrs(ximage);
779 return XPutPixel(ximage, x, y, pixel);
784 register XImage *ximage,
789 if ((ximage->format == ZPixmap) && (ximage->bits_per_pixel == 8)) {
790 ximage->data[y * ximage->bytes_per_line + x] = pixel;
793 _XInitImageFuncPtrs(ximage);
794 return XPutPixel(ximage, x, y, pixel);
799 register XImage *ximage,
807 if (((ximage->bits_per_pixel | ximage->depth) == 1) &&
808 (ximage->byte_order == ximage->bitmap_bit_order)) {
809 xoff = x + ximage->xoffset;
810 yoff = y * ximage->bytes_per_line + (xoff >> 3);
812 if (ximage->bitmap_bit_order == MSBFirst)
817 ximage->data[yoff] |= bit;
819 ximage->data[yoff] &= ~bit;
822 _XInitImageFuncPtrs(ximage);
823 return XPutPixel(ximage, x, y, pixel);
838 XImage *ximage,
856 subimage->format = ximage->format;
857 subimage->byte_order = ximage->byte_order;
858 subimage->bitmap_unit = ximage->bitmap_unit;
859 subimage->bitmap_bit_order = ximage->bitmap_bit_order;
860 subimage->bitmap_pad = ximage->bitmap_pad;
861 subimage->bits_per_pixel = ximage->bits_per_pixel;
862 subimage->depth = ximage->depth;
889 if (height > ximage->height - y ) height = ximage->height - y;
890 if (width > ximage->width - x ) width = ximage->width - x;
894 pixel = XGetPixel(ximage, col, row);
970 register XImage *ximage,
978 if ((ximage->bits_per_pixel | ximage->depth) == 1) {
986 register unsigned char *dp = (unsigned char *) ximage->data;
987 x = ximage->bytes_per_line * ximage->height;
992 } else if ((ximage->format == ZPixmap) &&
993 (ximage->bits_per_pixel == 8)) {
994 register unsigned char *dp = (unsigned char *) ximage->data;
995 x = ximage->bytes_per_line * ximage->height;
998 } else if ((ximage->format == ZPixmap) &&
999 (ximage->bits_per_pixel == 16) &&
1000 (*((const char *)&byteorderpixel) == ximage->byte_order)) {
1001 register unsigned short *dp = (unsigned short *) ximage->data;
1002 x = (ximage->bytes_per_line >> 1) * ximage->height;
1005 } else if ((ximage->format == ZPixmap) &&
1006 (ximage->bits_per_pixel == 32) &&
1007 (*((const char *)&byteorderpixel) == ximage->byte_order)) {
1008 register CARD32 *dp = (CARD32 *) ximage->data;
1009 x = (ximage->bytes_per_line >> 2) * ximage->height;
1013 for (y = ximage->height; --y >= 0; ) {
1014 for (x = ximage->width; --x >= 0; ) {
1015 register unsigned long pixel = XGetPixel(ximage, x, y);
1017 XPutPixel(ximage, x, y, pixel);