SDL_nxvideo.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:3k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*
  2.     SDL - Simple DirectMedia Layer
  3.     Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002  Sam Lantinga
  4.     Copyright (C) 2001  Hsieh-Fu Tsai
  5.     This library is free software; you can redistribute it and/or
  6.     modify it under the terms of the GNU Library General Public
  7.     License as published by the Free Software Foundation; either
  8.     version 2 of the License, or (at your option) any later version.
  9.     This library is distributed in the hope that it will be useful,
  10.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.     Library General Public License for more details.
  13.     You should have received a copy of the GNU Library General Public
  14.     License along with this library; if not, write to the Free
  15.     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  16.     Sam Lantinga
  17.     slouken@libsdl.org
  18.     
  19.     Hsieh-Fu Tsai
  20.     clare@setabox.com
  21. */
  22. #ifndef _SDL_nxvideo_h
  23. #define _SDL_nxvideo_h
  24. #include <microwin/nano-X.h>
  25. #include "SDL_sysvideo.h"
  26. #ifdef ENABLE_NANOX_DEBUG
  27. #define Dprintf printf
  28. #else
  29. #define Dprintf(ignore...)
  30. #endif
  31. // Hidden "this" pointer for the video functions
  32. #define _THIS   SDL_VideoDevice * this
  33. // Private display data
  34. typedef struct NX_SDL_VISUAL {
  35.     int    bpp ;
  36.     Uint32 red_mask ;
  37.     Uint32 green_mask ;
  38.     Uint32 blue_mask ;
  39. } nx_sdl_visual_t ;
  40. struct SDL_PrivateVideoData {
  41.     GR_WINDOW_ID    SDL_Window ;
  42.     GR_WINDOW_ID    FSwindow ;
  43.     // Flag: true if we have been passed a window
  44.     char            * SDL_windowid ;
  45.     GR_GC_ID        GC ;
  46.     unsigned char   * Image ;
  47.     unsigned char   * Image_buff ;
  48.     nx_sdl_visual_t SDL_Visual ;
  49.     // The current list of available video modes
  50.     SDL_Rect        ** modelist ;
  51.     int             currently_fullscreen ;
  52.     // for fullscreen
  53.     int             OffsetX, OffsetY ;
  54.     // for GammaRamp
  55.     Uint16          * GammaRamp_R, * GammaRamp_G, * GammaRamp_B ;
  56.     // for GrArea, r_mask, g_mask, b_mask
  57.     int             pixel_type ;
  58. } ;
  59. #define SDL_Window           (this -> hidden -> SDL_Window)
  60. #define FSwindow             (this -> hidden -> FSwindow)
  61. #define SDL_windowid         (this -> hidden -> SDL_windowid)
  62. #define SDL_GC               (this -> hidden -> GC)
  63. #define SDL_Image            (this -> hidden -> Image)
  64. #define Image_buff           (this -> hidden -> Image_buff)
  65. #define SDL_Visual           (this -> hidden -> SDL_Visual)
  66. #define SDL_modelist         (this -> hidden -> modelist)
  67. #define currently_fullscreen (this -> hidden -> currently_fullscreen)
  68. #define OffsetX              (this -> hidden -> OffsetX)
  69. #define OffsetY              (this -> hidden -> OffsetY)
  70. #define GammaRamp_R          (this -> hidden -> GammaRamp_R)
  71. #define GammaRamp_G          (this -> hidden -> GammaRamp_G)
  72. #define GammaRamp_B          (this -> hidden -> GammaRamp_B)
  73. #define pixel_type           (this -> hidden -> pixel_type)
  74. #define CI_SIZE 256   // color index size
  75. #endif  // _SDL_nxvideo_h