glamor_transfer.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*
  2. * Copyright © 2014 Keith Packard
  3. *
  4. * Permission to use, copy, modify, distribute, and sell this software and its
  5. * documentation for any purpose is hereby granted without fee, provided that
  6. * the above copyright notice appear in all copies and that both that copyright
  7. * notice and this permission notice appear in supporting documentation, and
  8. * that the name of the copyright holders not be used in advertising or
  9. * publicity pertaining to distribution of the software without specific,
  10. * written prior permission. The copyright holders make no representations
  11. * about the suitability of this software for any purpose. It is provided "as
  12. * is" without express or implied warranty.
  13. *
  14. * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
  15. * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
  16. * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  17. * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
  18. * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  19. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
  20. * OF THIS SOFTWARE.
  21. */
  22. #ifndef _GLAMOR_TRANSFER_H_
  23. #define _GLAMOR_TRANSFER_H_
  24. void
  25. glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type);
  26. void
  27. glamor_upload_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox,
  28. int dx_src, int dy_src,
  29. int dx_dst, int dy_dst,
  30. uint8_t *bits, uint32_t byte_stride);
  31. void
  32. glamor_upload_region(PixmapPtr pixmap, RegionPtr region,
  33. int region_x, int region_y,
  34. uint8_t *bits, uint32_t byte_stride);
  35. void
  36. glamor_upload_pixmap(PixmapPtr pixmap);
  37. void
  38. glamor_download_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox,
  39. int dx_src, int dy_src,
  40. int dx_dst, int dy_dst,
  41. uint8_t *bits, uint32_t byte_stride);
  42. void
  43. glamor_download_rect(PixmapPtr pixmap, int x, int y, int w, int h, uint8_t *bits);
  44. void
  45. glamor_download_pixmap(PixmapPtr pixmap);
  46. #endif /* _GLAMOR_TRANSFER_H_ */