Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

addons_exports.h

00001 // $Id: addons_exports.h 158 2006-01-31 10:26:35Z MagicalTux $
00002 // Addons exports : exported functions to addons...
00003 
00004 #ifdef DYNAMIC_LINKING
00005  #ifdef __ADDON
00006   #define EXPORTED_SYMBOL(_symbol,_offset,_var) memcpy(&_var,call_table+(_offset*sizeof(void *)),sizeof(void *))
00007  #else
00008   #define EXPORTED_SYMBOL(_symbol,_offset,_var) addon_tmp_pointer=_symbol; memcpy(call_table+(_offset*sizeof(void *)),&addon_tmp_pointer,sizeof(void *))
00009  #endif
00010 #else
00011  #define EXPORTED_SYMBOL(_symbol,_offset,_var) _var=_symbol
00012 #endif
00013 
00014 #define MFNC_COUNT 7
00015 
00016 // common export table
00017 
00018 #define MFNC_LOCAL_TABLE(_var) EXPORTED_SYMBOL(local_table, 0, _var)
00019 #define MFNC_DISPLAY_TITLE(_var) EXPORTED_SYMBOL(display_title, 1, _var)
00020 #define MFNC_ADD_TIMER(_var) EXPORTED_SYMBOL(add_timer, 2, _var)
00021 #define MFNC_ADD_TIMER_INTERVAL(_var) EXPORTED_SYMBOL(add_timer_interval, 3, _var)
00022 #define MFNC_DELETE_TIMER(_var) EXPORTED_SYMBOL(delete_timer, 4, _var)
00023 #define MFNC_ADDTICK_TIMER(_var) EXPORTED_SYMBOL(addtick_timer, 5, _var)
00024 #define MFNC_GET_VERSION(_var) EXPORTED_SYMBOL(get_version, 6, _var)
00025 

Generated on Fri Apr 28 10:20:04 2006 for OpenAthena by  doxygen 1.4.4