/src/Core/objects/Overlay.xs

http://github.com/PerlGameDev/SDL · Unknown · 87 lines · 71 code · 16 blank · 0 comment · 0 complexity · 3ba401009a4a3cc2aefeb25303abec40 MD5 · raw file

  1. #include "EXTERN.h"
  2. #include "perl.h"
  3. #include "XSUB.h"
  4. #include "ppport.h"
  5. #ifndef aTHX_
  6. #define aTHX_
  7. #endif
  8. #include <SDL.h>
  9. MODULE = SDL::Overlay PACKAGE = SDL::Overlay PREFIX = overlay_
  10. =for documentation
  11. SDL_Overlay -- YUV video overlay
  12. typedef struct{
  13. Uint32 format;
  14. int w, h;
  15. int planes;
  16. Uint16 *pitches;
  17. Uint8 **pixels;
  18. Uint32 hw_overlay:1;
  19. } SDL_Overlay;
  20. =cut
  21. SDL_Overlay *
  22. overlay_new(CLASS, width, height, format, display)
  23. char* CLASS
  24. int width
  25. int height
  26. Uint32 format
  27. SDL_Surface *display;
  28. CODE:
  29. RETVAL = SDL_CreateYUVOverlay(width, height, format, display);
  30. OUTPUT:
  31. RETVAL
  32. int
  33. overlay_w( overlay )
  34. SDL_Overlay* overlay
  35. CODE:
  36. RETVAL = overlay->w;
  37. OUTPUT:
  38. RETVAL
  39. int
  40. overlay_h( overlay )
  41. SDL_Overlay* overlay
  42. CODE:
  43. RETVAL = overlay->h;
  44. OUTPUT:
  45. RETVAL
  46. int
  47. overlay_planes( overlay )
  48. SDL_Overlay* overlay
  49. CODE:
  50. RETVAL = overlay->planes;
  51. OUTPUT:
  52. RETVAL
  53. Uint32
  54. overlay_hwoverlay( overlay )
  55. SDL_Overlay* overlay
  56. CODE:
  57. RETVAL = overlay->hw_overlay;
  58. OUTPUT:
  59. RETVAL
  60. Uint32
  61. overlay_format( overlay )
  62. SDL_Overlay* overlay
  63. CODE:
  64. RETVAL = overlay->format;
  65. OUTPUT:
  66. RETVAL
  67. void
  68. overlay_DESTROY(overlay)
  69. SDL_Overlay *overlay
  70. CODE:
  71. SDL_FreeYUVOverlay(overlay);