Changeset 168 for trunk/src/lib/sdl_image.cc
- Timestamp:
- 07/17/13 05:20:15 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/lib/sdl_image.cc
r109 r168 11 11 #include "nv/library.hh" 12 12 13 /* SDL_image.h functions */ 14 const SDL_version * (NV_SDL_APIENTRY *IMG_Linked_Version) (void) = nullptr; 15 int (NV_SDL_APIENTRY *IMG_Init) (int flags) = nullptr; 16 void (NV_SDL_APIENTRY *IMG_Quit) (void) = nullptr; 17 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadTyped_RW) (SDL_RWops *src, int freesrc, char *type) = nullptr; 18 SDL_Surface * (NV_SDL_APIENTRY *IMG_Load) (const char *file) = nullptr; 19 SDL_Surface * (NV_SDL_APIENTRY *IMG_Load_RW) (SDL_RWops *src, int freesrc) = nullptr; 20 int (NV_SDL_APIENTRY *IMG_isICO) (SDL_RWops *src) = nullptr; 21 int (NV_SDL_APIENTRY *IMG_isCUR) (SDL_RWops *src) = nullptr; 22 int (NV_SDL_APIENTRY *IMG_isBMP) (SDL_RWops *src) = nullptr; 23 int (NV_SDL_APIENTRY *IMG_isGIF) (SDL_RWops *src) = nullptr; 24 int (NV_SDL_APIENTRY *IMG_isJPG) (SDL_RWops *src) = nullptr; 25 int (NV_SDL_APIENTRY *IMG_isPNG) (SDL_RWops *src) = nullptr; 26 int (NV_SDL_APIENTRY *IMG_isTIF) (SDL_RWops *src) = nullptr; 27 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadICO_RW) (SDL_RWops *src) = nullptr; 28 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadCUR_RW) (SDL_RWops *src) = nullptr; 29 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadBMP_RW) (SDL_RWops *src) = nullptr; 30 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadGIF_RW) (SDL_RWops *src) = nullptr; 31 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadJPG_RW) (SDL_RWops *src) = nullptr; 32 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadPNG_RW) (SDL_RWops *src) = nullptr; 33 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadTGA_RW) (SDL_RWops *src) = nullptr; 34 SDL_Surface * (NV_SDL_APIENTRY *IMG_LoadTIF_RW) (SDL_RWops *src) = nullptr; 13 #define NV_SDL_FUN( rtype, fname, fparams ) rtype (NV_SDL_APIENTRY *fname) fparams = nullptr; 14 #include <nv/lib/detail/sdl_image_functions.inc> 15 #undef NV_SDL_FUN 35 16 36 17 bool nv::load_sdl_image_library( const char* path ) 37 18 { 38 # define NV_SDL_IMAGE_LOAD( symbol ) *(void **) (&symbol) = sdl_image_library.get(#symbol);39 19 static nv::library sdl_image_library; 40 20 if ( sdl_image_library.is_open() ) return true; 41 21 sdl_image_library.open( path ); 42 22 43 NV_SDL_IMAGE_LOAD( IMG_Linked_Version ); 44 NV_SDL_IMAGE_LOAD( IMG_Init ); 45 NV_SDL_IMAGE_LOAD( IMG_Quit ); 46 NV_SDL_IMAGE_LOAD( IMG_LoadTyped_RW ); 47 NV_SDL_IMAGE_LOAD( IMG_Load ); 48 NV_SDL_IMAGE_LOAD( IMG_Load_RW ); 49 NV_SDL_IMAGE_LOAD( IMG_isICO ); 50 NV_SDL_IMAGE_LOAD( IMG_isCUR ); 51 NV_SDL_IMAGE_LOAD( IMG_isBMP ); 52 NV_SDL_IMAGE_LOAD( IMG_isGIF ); 53 NV_SDL_IMAGE_LOAD( IMG_isJPG ); 54 NV_SDL_IMAGE_LOAD( IMG_isPNG ); 55 NV_SDL_IMAGE_LOAD( IMG_isTIF ); 56 NV_SDL_IMAGE_LOAD( IMG_LoadICO_RW ); 57 NV_SDL_IMAGE_LOAD( IMG_LoadCUR_RW ); 58 NV_SDL_IMAGE_LOAD( IMG_LoadBMP_RW ); 59 NV_SDL_IMAGE_LOAD( IMG_LoadGIF_RW ); 60 NV_SDL_IMAGE_LOAD( IMG_LoadJPG_RW ); 61 NV_SDL_IMAGE_LOAD( IMG_LoadPNG_RW ); 62 NV_SDL_IMAGE_LOAD( IMG_LoadTGA_RW ); 63 NV_SDL_IMAGE_LOAD( IMG_LoadTIF_RW ); 23 # define NV_SDL_FUN( rtype, fname, fparams ) *(void **) (&fname) = sdl_image_library.get(#fname); 24 # include <nv/lib/detail/sdl_image_functions.inc> 25 # undef NV_SDL_FUN 64 26 65 # undef NV_SDL_IMAGE_LOAD66 27 return true; 67 28 }
Note: See TracChangeset
for help on using the changeset viewer.