ExaFMM 1
Fast-multipole Method for exascale systems
include/quark_unpack_args.h
Go to the documentation of this file.
00001 /**
00002  *
00003  * @file quark_unpack_args.h
00004  *
00005  * Macros used to retrieve arguments from QUARK to the function being executed.
00006  *
00007  * PLASMA is a software package provided by Univ. of Tennessee,
00008  * Univ. of California Berkeley and Univ. of Colorado Denver
00009  *
00010  * @version 2.4.5
00011  * @author Asim YarKhan
00012  * @date 2010-11-15
00013  *
00014  **/
00015 
00016 ///////////////////////////////////////////////////////////////////////////////////////////////////
00017 #ifndef _UNPACK_ARGS_
00018 #define _UNPACK_ARGS_
00019 
00020 #include "quark.h"
00021 
00022 #define quark_unpack_args_1(quark, \
00023     arg1) \
00024 { \
00025   void *lastarg = NULL; \
00026   void *args_list = (void *)QUARK_Args_List( quark );   \
00027   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00028   memcpy(&arg1, arg, sizeof(arg1)); \
00029 }
00030 
00031 #define quark_unpack_args_2(quark, \
00032     arg1, \
00033     arg2) \
00034 { \
00035   void *lastarg = NULL; \
00036   void *args_list = QUARK_Args_List( quark ); \
00037   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00038   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00039   memcpy(&arg2, arg, sizeof(arg2)); \
00040 }
00041 
00042 #define quark_unpack_args_3(quark, \
00043     arg1, \
00044     arg2, \
00045     arg3) \
00046 { \
00047   void *lastarg = NULL; \
00048   void *args_list = QUARK_Args_List( quark ); \
00049   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00050   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00051   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00052   memcpy(&arg3, arg, sizeof(arg3)); \
00053 }
00054 
00055 #define quark_unpack_args_4(quark, \
00056     arg1, \
00057     arg2, \
00058     arg3, \
00059     arg4) \
00060 { \
00061   void *lastarg = NULL; \
00062   void *args_list = QUARK_Args_List( quark ); \
00063   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00064   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00065   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00066   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00067   memcpy(&arg4, arg, sizeof(arg4)); \
00068 }
00069 
00070 #define quark_unpack_args_5(quark, \
00071     arg1, \
00072     arg2, \
00073     arg3, \
00074     arg4, \
00075     arg5) \
00076 { \
00077   void *lastarg = NULL; \
00078   void *args_list = QUARK_Args_List( quark ); \
00079   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00080   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00081   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00082   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00083   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00084   memcpy(&arg5, arg, sizeof(arg5)); \
00085 }
00086 
00087 #define quark_unpack_args_6(quark, \
00088     arg1, \
00089     arg2, \
00090     arg3, \
00091     arg4, \
00092     arg5, \
00093     arg6) \
00094 { \
00095   void *lastarg = NULL; \
00096   void *args_list = QUARK_Args_List( quark ); \
00097   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00098   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00099   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00100   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00101   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00102   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00103   memcpy(&arg6, arg, sizeof(arg6)); \
00104 }
00105 
00106 #define quark_unpack_args_7(quark, \
00107     arg1, \
00108     arg2, \
00109     arg3, \
00110     arg4, \
00111     arg5, \
00112     arg6, \
00113     arg7) \
00114 { \
00115   void *lastarg = NULL; \
00116   void *args_list = QUARK_Args_List( quark ); \
00117   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00118   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00119   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00120   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00121   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00122   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00123   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00124   memcpy(&arg7, arg, sizeof(arg7)); \
00125 }
00126 
00127 #define quark_unpack_args_8(quark, \
00128     arg1, \
00129     arg2, \
00130     arg3, \
00131     arg4, \
00132     arg5, \
00133     arg6, \
00134     arg7, \
00135     arg8) \
00136 { \
00137   void *lastarg = NULL; \
00138   void *args_list = QUARK_Args_List( quark ); \
00139   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00140   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00141   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00142   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00143   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00144   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00145   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00146   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00147   memcpy(&arg8, arg, sizeof(arg8)); \
00148 }
00149 
00150 #define quark_unpack_args_9(quark, \
00151     arg1, \
00152     arg2, \
00153     arg3, \
00154     arg4, \
00155     arg5, \
00156     arg6, \
00157     arg7, \
00158     arg8, \
00159     arg9) \
00160 { \
00161   void *lastarg = NULL; \
00162   void *args_list = QUARK_Args_List( quark ); \
00163   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00164   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00165   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00166   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00167   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00168   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00169   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00170   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00171   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00172   memcpy(&arg9, arg, sizeof(arg9)); \
00173 }
00174 
00175 #define quark_unpack_args_10(quark, \
00176     arg1, \
00177     arg2, \
00178     arg3, \
00179     arg4, \
00180     arg5, \
00181     arg6, \
00182     arg7, \
00183     arg8, \
00184     arg9, \
00185     arg10) \
00186 { \
00187   void *lastarg = NULL; \
00188   void *args_list = QUARK_Args_List( quark ); \
00189   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00190   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00191   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00192   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00193   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00194   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00195   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00196   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00197   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00198   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00199   memcpy(&arg10, arg, sizeof(arg10)); \
00200 }
00201 
00202 #define quark_unpack_args_11(quark, \
00203     arg1, \
00204     arg2, \
00205     arg3, \
00206     arg4, \
00207     arg5, \
00208     arg6, \
00209     arg7, \
00210     arg8, \
00211     arg9, \
00212     arg10, \
00213     arg11) \
00214 { \
00215   void *lastarg = NULL; \
00216   void *args_list = QUARK_Args_List( quark ); \
00217   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00218   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00219   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00220   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00221   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00222   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00223   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00224   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00225   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00226   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00227   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00228   memcpy(&arg11, arg, sizeof(arg11)); \
00229 }
00230 
00231 #define quark_unpack_args_12(quark, \
00232     arg1, \
00233     arg2, \
00234     arg3, \
00235     arg4, \
00236     arg5, \
00237     arg6, \
00238     arg7, \
00239     arg8, \
00240     arg9, \
00241     arg10, \
00242     arg11, \
00243     arg12) \
00244 { \
00245   void *lastarg = NULL; \
00246   void *args_list = QUARK_Args_List( quark ); \
00247   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00248   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00249   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00250   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00251   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00252   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00253   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00254   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00255   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00256   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00257   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00258   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00259   memcpy(&arg12, arg, sizeof(arg12)); \
00260 }
00261 
00262 #define quark_unpack_args_13(quark, \
00263     arg1, \
00264     arg2, \
00265     arg3, \
00266     arg4, \
00267     arg5, \
00268     arg6, \
00269     arg7, \
00270     arg8, \
00271     arg9, \
00272     arg10, \
00273     arg11, \
00274     arg12, \
00275     arg13) \
00276 { \
00277   void *lastarg = NULL; \
00278   void *args_list = QUARK_Args_List( quark ); \
00279   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00280   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00281   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00282   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00283   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00284   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00285   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00286   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00287   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00288   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00289   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00290   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00291   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00292   memcpy(&arg13, arg, sizeof(arg13)); \
00293 }
00294 
00295 #define quark_unpack_args_14(quark, \
00296     arg1, \
00297     arg2, \
00298     arg3, \
00299     arg4, \
00300     arg5, \
00301     arg6, \
00302     arg7, \
00303     arg8, \
00304     arg9, \
00305     arg10, \
00306     arg11, \
00307     arg12, \
00308     arg13, \
00309     arg14) \
00310 { \
00311   void *lastarg = NULL; \
00312   void *args_list = QUARK_Args_List( quark ); \
00313   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00314   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00315   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00316   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00317   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00318   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00319   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00320   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00321   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00322   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00323   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00324   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00325   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00326   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00327   memcpy(&arg14, arg, sizeof(arg14)); \
00328 }
00329 
00330 #define quark_unpack_args_15(quark, \
00331     arg1, \
00332     arg2, \
00333     arg3, \
00334     arg4, \
00335     arg5, \
00336     arg6, \
00337     arg7, \
00338     arg8, \
00339     arg9, \
00340     arg10, \
00341     arg11, \
00342     arg12, \
00343     arg13, \
00344     arg14, \
00345     arg15) \
00346 { \
00347   void *lastarg = NULL; \
00348   void *args_list = QUARK_Args_List( quark ); \
00349   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00350   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00351   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00352   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00353   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00354   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00355   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00356   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00357   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00358   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00359   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00360   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00361   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00362   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00363   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00364   memcpy(&arg15, arg, sizeof(arg15)); \
00365 }
00366 
00367 #define quark_unpack_args_16(quark, \
00368     arg1, \
00369     arg2, \
00370     arg3, \
00371     arg4, \
00372     arg5, \
00373     arg6, \
00374     arg7, \
00375     arg8, \
00376     arg9, \
00377     arg10, \
00378     arg11, \
00379     arg12, \
00380     arg13, \
00381     arg14, \
00382     arg15, \
00383     arg16) \
00384 { \
00385   void *lastarg = NULL; \
00386   void *args_list = QUARK_Args_List( quark ); \
00387   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00388   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00389   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00390   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00391   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00392   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00393   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00394   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00395   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00396   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00397   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00398   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00399   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00400   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00401   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00402   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00403   memcpy(&arg16, arg, sizeof(arg16)); \
00404 }
00405 
00406 #define quark_unpack_args_17(quark, \
00407     arg1, \
00408     arg2, \
00409     arg3, \
00410     arg4, \
00411     arg5, \
00412     arg6, \
00413     arg7, \
00414     arg8, \
00415     arg9, \
00416     arg10, \
00417     arg11, \
00418     arg12, \
00419     arg13, \
00420     arg14, \
00421     arg15, \
00422     arg16, \
00423     arg17) \
00424 { \
00425   void *lastarg = NULL; \
00426   void *args_list = QUARK_Args_List( quark ); \
00427   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00428   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00429   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00430   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00431   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00432   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00433   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00434   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00435   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00436   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00437   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00438   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00439   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00440   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00441   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00442   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00443   memcpy(&arg16, arg, sizeof(arg16)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00444   memcpy(&arg17, arg, sizeof(arg17)); \
00445 }
00446 
00447 #define quark_unpack_args_18(quark, \
00448     arg1, \
00449     arg2, \
00450     arg3, \
00451     arg4, \
00452     arg5, \
00453     arg6, \
00454     arg7, \
00455     arg8, \
00456     arg9, \
00457     arg10, \
00458     arg11, \
00459     arg12, \
00460     arg13, \
00461     arg14, \
00462     arg15, \
00463     arg16, \
00464     arg17, \
00465     arg18) \
00466 { \
00467   void *lastarg = NULL; \
00468   void *args_list = QUARK_Args_List( quark ); \
00469   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00470   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00471   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00472   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00473   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00474   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00475   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00476   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00477   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00478   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00479   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00480   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00481   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00482   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00483   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00484   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00485   memcpy(&arg16, arg, sizeof(arg16)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00486   memcpy(&arg17, arg, sizeof(arg17)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00487   memcpy(&arg18, arg, sizeof(arg18)); \
00488 }
00489 
00490 #define quark_unpack_args_19(quark, \
00491     arg1, \
00492     arg2, \
00493     arg3, \
00494     arg4, \
00495     arg5, \
00496     arg6, \
00497     arg7, \
00498     arg8, \
00499     arg9, \
00500     arg10, \
00501     arg11, \
00502     arg12, \
00503     arg13, \
00504     arg14, \
00505     arg15, \
00506     arg16, \
00507     arg17, \
00508     arg18, \
00509     arg19) \
00510 { \
00511   void *lastarg = NULL; \
00512   void *args_list = QUARK_Args_List( quark ); \
00513   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00514   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00515   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00516   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00517   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00518   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00519   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00520   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00521   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00522   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00523   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00524   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00525   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00526   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00527   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00528   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00529   memcpy(&arg16, arg, sizeof(arg16)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00530   memcpy(&arg17, arg, sizeof(arg17)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00531   memcpy(&arg18, arg, sizeof(arg18)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00532   memcpy(&arg19, arg, sizeof(arg19)); \
00533 }
00534 
00535 #define quark_unpack_args_20(quark, \
00536     arg1, \
00537     arg2, \
00538     arg3, \
00539     arg4, \
00540     arg5, \
00541     arg6, \
00542     arg7, \
00543     arg8, \
00544     arg9, \
00545     arg10, \
00546     arg11, \
00547     arg12, \
00548     arg13, \
00549     arg14, \
00550     arg15, \
00551     arg16, \
00552     arg17, \
00553     arg18, \
00554     arg19, \
00555     arg20) \
00556 { \
00557   void *lastarg = NULL; \
00558   void *args_list = QUARK_Args_List( quark ); \
00559   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00560   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00561   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00562   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00563   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00564   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00565   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00566   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00567   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00568   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00569   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00570   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00571   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00572   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00573   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00574   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00575   memcpy(&arg16, arg, sizeof(arg16)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00576   memcpy(&arg17, arg, sizeof(arg17)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00577   memcpy(&arg18, arg, sizeof(arg18)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00578   memcpy(&arg19, arg, sizeof(arg19)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00579   memcpy(&arg20, arg, sizeof(arg20)); \
00580 }
00581 
00582 #define quark_unpack_args_21(quark, \
00583     arg1, \
00584     arg2, \
00585     arg3, \
00586     arg4, \
00587     arg5, \
00588     arg6, \
00589     arg7, \
00590     arg8, \
00591     arg9, \
00592     arg10, \
00593     arg11, \
00594     arg12, \
00595     arg13, \
00596     arg14, \
00597     arg15, \
00598     arg16, \
00599     arg17, \
00600     arg18, \
00601     arg19, \
00602     arg20, \
00603     arg21) \
00604 { \
00605   void *lastarg = NULL; \
00606   void *args_list = QUARK_Args_List( quark ); \
00607   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00608   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00609   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00610   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00611   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00612   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00613   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00614   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00615   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00616   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00617   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00618   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00619   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00620   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00621   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00622   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00623   memcpy(&arg16, arg, sizeof(arg16)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00624   memcpy(&arg17, arg, sizeof(arg17)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00625   memcpy(&arg18, arg, sizeof(arg18)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00626   memcpy(&arg19, arg, sizeof(arg19)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00627   memcpy(&arg20, arg, sizeof(arg20)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00628   memcpy(&arg21, arg, sizeof(arg21)); \
00629 }
00630 
00631 #define quark_unpack_args_22(quark, \
00632     arg1, \
00633     arg2, \
00634     arg3, \
00635     arg4, \
00636     arg5, \
00637     arg6, \
00638     arg7, \
00639     arg8, \
00640     arg9, \
00641     arg10, \
00642     arg11, \
00643     arg12, \
00644     arg13, \
00645     arg14, \
00646     arg15, \
00647     arg16, \
00648     arg17, \
00649     arg18, \
00650     arg19, \
00651     arg20, \
00652     arg21, \
00653     arg22) \
00654 { \
00655   void *lastarg = NULL; \
00656   void *args_list = QUARK_Args_List( quark ); \
00657   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00658   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00659   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00660   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00661   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00662   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00663   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00664   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00665   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00666   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00667   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00668   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00669   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00670   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00671   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00672   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00673   memcpy(&arg16, arg, sizeof(arg16)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00674   memcpy(&arg17, arg, sizeof(arg17)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00675   memcpy(&arg18, arg, sizeof(arg18)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00676   memcpy(&arg19, arg, sizeof(arg19)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00677   memcpy(&arg20, arg, sizeof(arg20)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00678   memcpy(&arg21, arg, sizeof(arg21)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00679   memcpy(&arg22, arg, sizeof(arg22)); \
00680 }
00681 
00682 #define quark_unpack_args_23(quark, \
00683     arg1, \
00684     arg2, \
00685     arg3, \
00686     arg4, \
00687     arg5, \
00688     arg6, \
00689     arg7, \
00690     arg8, \
00691     arg9, \
00692     arg10, \
00693     arg11, \
00694     arg12, \
00695     arg13, \
00696     arg14, \
00697     arg15, \
00698     arg16, \
00699     arg17, \
00700     arg18, \
00701     arg19, \
00702     arg20, \
00703     arg21, \
00704     arg22, \
00705     arg23) \
00706 { \
00707   void *lastarg = NULL; \
00708   void *args_list = QUARK_Args_List( quark ); \
00709   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00710   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00711   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00712   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00713   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00714   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00715   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00716   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00717   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00718   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00719   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00720   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00721   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00722   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00723   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00724   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00725   memcpy(&arg16, arg, sizeof(arg16)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00726   memcpy(&arg17, arg, sizeof(arg17)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00727   memcpy(&arg18, arg, sizeof(arg18)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00728   memcpy(&arg19, arg, sizeof(arg19)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00729   memcpy(&arg20, arg, sizeof(arg20)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00730   memcpy(&arg21, arg, sizeof(arg21)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00731   memcpy(&arg22, arg, sizeof(arg22)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00732   memcpy(&arg23, arg, sizeof(arg23)); \
00733 }
00734 
00735 #define quark_unpack_args_24(quark, \
00736     arg1, \
00737     arg2, \
00738     arg3, \
00739     arg4, \
00740     arg5, \
00741     arg6, \
00742     arg7, \
00743     arg8, \
00744     arg9, \
00745     arg10, \
00746     arg11, \
00747     arg12, \
00748     arg13, \
00749     arg14, \
00750     arg15, \
00751     arg16, \
00752     arg17, \
00753     arg18, \
00754     arg19, \
00755     arg20, \
00756     arg21, \
00757     arg22, \
00758     arg23, \
00759     arg24) \
00760 { \
00761   void *lastarg = NULL; \
00762   void *args_list = QUARK_Args_List( quark ); \
00763   void *arg = QUARK_Args_Pop(args_list, &lastarg); \
00764   memcpy(&arg1, arg, sizeof(arg1)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00765   memcpy(&arg2, arg, sizeof(arg2)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00766   memcpy(&arg3, arg, sizeof(arg3)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00767   memcpy(&arg4, arg, sizeof(arg4)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00768   memcpy(&arg5, arg, sizeof(arg5)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00769   memcpy(&arg6, arg, sizeof(arg6)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00770   memcpy(&arg7, arg, sizeof(arg7)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00771   memcpy(&arg8, arg, sizeof(arg8)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00772   memcpy(&arg9, arg, sizeof(arg9)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00773   memcpy(&arg10, arg, sizeof(arg10)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00774   memcpy(&arg11, arg, sizeof(arg11)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00775   memcpy(&arg12, arg, sizeof(arg12)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00776   memcpy(&arg13, arg, sizeof(arg13)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00777   memcpy(&arg14, arg, sizeof(arg14)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00778   memcpy(&arg15, arg, sizeof(arg15)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00779   memcpy(&arg16, arg, sizeof(arg16)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00780   memcpy(&arg17, arg, sizeof(arg17)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00781   memcpy(&arg18, arg, sizeof(arg18)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00782   memcpy(&arg19, arg, sizeof(arg19)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00783   memcpy(&arg20, arg, sizeof(arg20)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00784   memcpy(&arg21, arg, sizeof(arg21)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00785   memcpy(&arg22, arg, sizeof(arg22)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00786   memcpy(&arg23, arg, sizeof(arg23)); arg = QUARK_Args_Pop(args_list, &lastarg); \
00787   memcpy(&arg24, arg, sizeof(arg24)); \
00788 }
00789 
00790 #endif
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines