SDL_DYNAPI_PROC

 

#define SDL_DYNAPI_PROC(rc,fn,params,args,ret) \
    typedef rc (SDLCALL *SDL_DYNAPIFN_##fn) params; \
    static rc SDLCALL fn##_DEFAULT params; \
    extern rc SDLCALL fn##_REAL params;
#include "SDL_dynapi_procs.h"
#undef SDL_DYNAPI_PROC

##########################SDL_dynapi_procs.h中的一個例子###################################

SDL_DYNAPI_PROC  (  int,   SDL_SemPost,   (SDL_sem *a) ,   (a),   return  )

................................................

########################################################################

typedef  int  (SDLCALL *SDL_DYNAPIFN_SDL_SemPost SDL_sem *a;

static  int SDLCALL  SDL_SemPost_DEFAULT  SDL_sem *a;

extern int SDLCALL  SDL_SemPost_REAL  SDL_sem *a;

................................................

##############################################################################

 

/* The jump table! */
typedef struct {
    #define SDL_DYNAPI_PROC(rc,fn,params,args,ret) SDL_DYNAPIFN_##fn fn;
    #include "SDL_dynapi_procs.h"
    #undef SDL_DYNAPI_PROC
} SDL_DYNAPI_jump_table;
###########################SDL_dynapi_procs.h中的一個例子####################################

SDL_DYNAPI_PROC  (  int,   SDL_SemPost,   (SDL_sem *a) ,   (a),   return  )

..................................................................................

########################################################################

typedef struct {
   SDL_DYNAPIFN_SDL_SemPost SDL_SemPost;

    .............................................................................
} SDL_DYNAPI_jump_table;

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章