13 #ifndef ROOT_TGWin32ProxyDefs 14 #define ROOT_TGWin32ProxyDefs 19 #define _NAME4_(name1,name2,name3,name4) _NAME3_(name1,name2,name3)name4 43 #define DEBUG_PROFILE_PROXY_START(method)\ 50 gDebugValue = gDebug;\ 51 debug = (gDebugValue==kDebugProfile) || (gDebugValue==kDebugTrace);\ 53 start = GetMilliSeconds();\ 56 printf(" method name hits time/hits(ms) time(ms) | Total = %d hits %6.2f ms\n",total,total_time );\ 57 printf("------------------------------------------------------------------------------------------------------------\n");\ 60 printf(" %-30s %-6d %-3.2f %-4.2f\n",#method,i,t/i,t);\ 62 total_time = t = total = i = 0;\ 66 #define DEBUG_PROFILE_PROXY_STOP(method)\ 69 double dt = GetMilliSeconds() - start;\ 73 if (gDebugValue==kDebugTrace) printf(#method " %d\n",i);\ 79 #define RETURN_PROXY_OBJECT(klass)\ 80 _NAME2_(T,klass)* _NAME3_(TGWin32,klass,Proxy)::ProxyObject()\ 82 static TList *gListOfProxies = new TList();\ 83 static _NAME3_(TGWin32,klass,Proxy) *proxy = 0;\ 84 ULong_t id = ::GetCurrentThreadId();\ 85 if (proxy && (proxy->GetId()==id)) return proxy;\ 86 if (id==fgMainThreadId) return _NAME3_(TGWin32,klass,Proxy)::RealObject();\ 87 TIter next(gListOfProxies);\ 88 while ((proxy=(_NAME3_(TGWin32,klass,Proxy)*)next())) {\ 89 if (proxy->GetId()==id) {\ 93 proxy = new _NAME3_(TGWin32,klass,Proxy)();\ 94 gListOfProxies->Add(proxy);\ 100 #define VOID_METHOD_ARG0_LOCK(klass,method)\ 101 void _NAME3_(TGWin32,klass,Proxy)::method()\ 103 DEBUG_PROFILE_PROXY_START(method)\ 105 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method();\ 107 DEBUG_PROFILE_PROXY_STOP(method)\ 111 #define VOID_METHOD_ARG1_LOCK(klass,method,type1,par1)\ 112 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1)\ 114 DEBUG_PROFILE_PROXY_START(method)\ 116 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(par1);\ 118 DEBUG_PROFILE_PROXY_STOP(method)\ 122 #define VOID_METHOD_ARG2_LOCK(klass,method,type1,par1,type2,par2)\ 123 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2)\ 125 DEBUG_PROFILE_PROXY_START(method)\ 127 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(par1,par2);\ 129 DEBUG_PROFILE_PROXY_STOP(method)\ 133 #define VOID_METHOD_ARG3_LOCK(klass,method,type1,par1,type2,par2,type3,par3)\ 134 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3)\ 136 DEBUG_PROFILE_PROXY_START(method)\ 138 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(par1,par2,par3);\ 140 DEBUG_PROFILE_PROXY_STOP(method)\ 144 #define VOID_METHOD_ARG4_LOCK(klass,method,type1,par1,type2,par2,type3,par3,type4,par4)\ 145 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4)\ 147 DEBUG_PROFILE_PROXY_START(method)\ 149 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(par1,par2,par3,par4);\ 151 DEBUG_PROFILE_PROXY_STOP(method)\ 155 #define VOID_METHOD_ARG5_LOCK(klass,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5)\ 156 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5)\ 158 DEBUG_PROFILE_PROXY_START(method)\ 160 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(par1,par2,par3,par4,par5);\ 162 DEBUG_PROFILE_PROXY_STOP(method)\ 166 #define VOID_METHOD_ARG0(klass,method,sync)\ 167 void _NAME3_(p2,klass,method)(void *in)\ 169 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method();\ 172 void _NAME3_(TGWin32,klass,Proxy)::method()\ 174 DEBUG_PROFILE_PROXY_START(method)\ 175 fCallBack = &_NAME3_(p2,klass,method);\ 176 ForwardCallBack(sync);\ 177 DEBUG_PROFILE_PROXY_STOP(method)\ 181 #define VOID_METHOD_ARG1(klass,method,type1,par1,sync)\ 182 void _NAME4_(p2,klass,method,par1)(void *in)\ 188 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1);\ 191 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1)\ 193 DEBUG_PROFILE_PROXY_START(method)\ 196 tmp(type1 par1):par1(par1) {}\ 198 fParam = new tmp(par1);\ 199 fCallBack = &_NAME4_(p2,klass,method,par1);\ 200 Bool_t batch = ForwardCallBack(sync);\ 201 par1 = ((tmp*)fParam)->par1;\ 202 if (!batch) delete fParam;\ 203 DEBUG_PROFILE_PROXY_STOP(method)\ 207 #define VOID_METHOD_ARG2(klass,method,type1,par1,type2,par2,sync)\ 208 void _NAME4_(p2,klass,method,par1)(void *in)\ 211 type1 par1; type2 par2;\ 214 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2);\ 217 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2)\ 219 DEBUG_PROFILE_PROXY_START(method)\ 221 type1 par1; type2 par2;\ 222 tmp(type1 par1,type2 par2):par1(par1),par2(par2) {}\ 224 fParam = new tmp(par1,par2);\ 225 fCallBack = &_NAME4_(p2,klass,method,par1);\ 226 Bool_t batch = ForwardCallBack(sync);\ 227 par1 = ((tmp*)fParam)->par1;\ 228 par2 = ((tmp*)fParam)->par2;\ 229 if (!batch) delete fParam;\ 230 DEBUG_PROFILE_PROXY_STOP(method)\ 234 #define VOID_METHOD_ARG3(klass,method,type1,par1,type2,par2,type3,par3,sync)\ 235 void _NAME4_(p2,klass,method,par1)(void *in)\ 238 type1 par1; type2 par2; type3 par3;\ 241 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3);\ 244 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3)\ 246 DEBUG_PROFILE_PROXY_START(method)\ 248 type1 par1; type2 par2; type3 par3;\ 249 tmp(type1 par1,type2 par2,type3 par3):par1(par1),par2(par2),par3(par3) {}\ 251 fParam = new tmp(par1,par2,par3);\ 252 fCallBack = &_NAME4_(p2,klass,method,par1);\ 253 Bool_t batch = ForwardCallBack(sync);\ 254 par1 = ((tmp*)fParam)->par1;\ 255 par2 = ((tmp*)fParam)->par2;\ 256 par3 = ((tmp*)fParam)->par3;\ 257 if (!batch) delete fParam;\ 258 DEBUG_PROFILE_PROXY_STOP(method)\ 262 #define VOID_METHOD_ARG4(klass,method,type1,par1,type2,par2,type3,par3,type4,par4,sync)\ 263 void _NAME4_(p2,klass,method,par1)(void *in)\ 266 type1 par1; type2 par2; type3 par3; type4 par4;\ 269 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4);\ 272 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4)\ 274 DEBUG_PROFILE_PROXY_START(method)\ 276 type1 par1; type2 par2; type3 par3; type4 par4;\ 277 tmp(type1 par1,type2 par2,type3 par3,type4 par4):par1(par1),par2(par2),par3(par3),par4(par4) {}\ 279 fParam = new tmp(par1,par2,par3,par4);\ 280 fCallBack = &_NAME4_(p2,klass,method,par1);\ 281 Bool_t batch = ForwardCallBack(sync);\ 282 par1 = ((tmp*)fParam)->par1;\ 283 par2 = ((tmp*)fParam)->par2;\ 284 par3 = ((tmp*)fParam)->par3;\ 285 par4 = ((tmp*)fParam)->par4;\ 286 if (!batch) delete fParam;\ 287 DEBUG_PROFILE_PROXY_STOP(method)\ 291 #define VOID_METHOD_ARG5(klass,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,sync)\ 292 void _NAME4_(p2,klass,method,par1)(void *in)\ 295 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5;\ 298 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5);\ 301 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5)\ 303 DEBUG_PROFILE_PROXY_START(method)\ 305 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5;\ 306 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5) {}\ 308 fParam = new tmp(par1,par2,par3,par4,par5);\ 309 fCallBack = &_NAME4_(p2,klass,method,par1);\ 310 Bool_t batch = ForwardCallBack(sync);\ 311 par1 = ((tmp*)fParam)->par1;\ 312 par2 = ((tmp*)fParam)->par2;\ 313 par3 = ((tmp*)fParam)->par3;\ 314 par4 = ((tmp*)fParam)->par4;\ 315 par5 = ((tmp*)fParam)->par5;\ 316 if (!batch) delete fParam;\ 317 DEBUG_PROFILE_PROXY_STOP(method)\ 321 #define VOID_METHOD_ARG6(klass,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,sync)\ 322 void _NAME4_(p2,klass,method,par1)(void *in)\ 325 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6;\ 328 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6);\ 331 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6)\ 333 DEBUG_PROFILE_PROXY_START(method)\ 335 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6;\ 336 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6) {}\ 338 fParam = new tmp(par1,par2,par3,par4,par5,par6);\ 339 fCallBack = &_NAME4_(p2,klass,method,par1);\ 340 Bool_t batch = ForwardCallBack(sync);\ 341 par1 = ((tmp*)fParam)->par1;\ 342 par2 = ((tmp*)fParam)->par2;\ 343 par3 = ((tmp*)fParam)->par3;\ 344 par4 = ((tmp*)fParam)->par4;\ 345 par5 = ((tmp*)fParam)->par5;\ 346 par6 = ((tmp*)fParam)->par6;\ 347 if (!batch) delete fParam;\ 348 DEBUG_PROFILE_PROXY_STOP(method)\ 352 #define VOID_METHOD_ARG7(klass,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,sync)\ 353 void _NAME4_(p2,klass,method,par1)(void *in)\ 356 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7;\ 359 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7);\ 362 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7)\ 364 DEBUG_PROFILE_PROXY_START(method)\ 366 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7;\ 367 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7) {}\ 369 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7);\ 370 fCallBack = &_NAME4_(p2,klass,method,par1);\ 371 Bool_t batch = ForwardCallBack(sync);\ 372 par1 = ((tmp*)fParam)->par1;\ 373 par2 = ((tmp*)fParam)->par2;\ 374 par3 = ((tmp*)fParam)->par3;\ 375 par4 = ((tmp*)fParam)->par4;\ 376 par5 = ((tmp*)fParam)->par5;\ 377 par6 = ((tmp*)fParam)->par6;\ 378 par7 = ((tmp*)fParam)->par7;\ 379 if (!batch) delete fParam;\ 380 DEBUG_PROFILE_PROXY_STOP(method)\ 384 #define VOID_METHOD_ARG8(klass,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,type8,par8,sync)\ 385 void _NAME4_(p2,klass,method,par1)(void *in)\ 388 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8;\ 391 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7,p->par8);\ 394 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8)\ 396 DEBUG_PROFILE_PROXY_START(method)\ 398 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8;\ 399 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7),par8(par8) {}\ 401 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7,par8);\ 402 fCallBack = &_NAME4_(p2,klass,method,par1);\ 403 Bool_t batch = ForwardCallBack(sync);\ 404 par1 = ((tmp*)fParam)->par1;\ 405 par2 = ((tmp*)fParam)->par2;\ 406 par3 = ((tmp*)fParam)->par3;\ 407 par4 = ((tmp*)fParam)->par4;\ 408 par5 = ((tmp*)fParam)->par5;\ 409 par6 = ((tmp*)fParam)->par6;\ 410 par7 = ((tmp*)fParam)->par7;\ 411 par8 = ((tmp*)fParam)->par8;\ 412 if (!batch) delete fParam;\ 413 DEBUG_PROFILE_PROXY_STOP(method)\ 417 #define VOID_METHOD_ARG9(klass,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,type8,par8,type9,par9,sync)\ 418 void _NAME4_(p2,klass,method,par1)(void *in)\ 421 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9;\ 424 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7,p->par8,p->par9);\ 427 void _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9)\ 429 DEBUG_PROFILE_PROXY_START(method)\ 431 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9;\ 432 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7),par8(par8),par9(par9) {}\ 434 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7,par8,par9);\ 435 fCallBack = &_NAME4_(p2,klass,method,par1);\ 436 Bool_t batch = ForwardCallBack(sync);\ 437 par1 = ((tmp*)fParam)->par1;\ 438 par2 = ((tmp*)fParam)->par2;\ 439 par3 = ((tmp*)fParam)->par3;\ 440 par4 = ((tmp*)fParam)->par4;\ 441 par5 = ((tmp*)fParam)->par5;\ 442 par6 = ((tmp*)fParam)->par6;\ 443 par7 = ((tmp*)fParam)->par7;\ 444 par8 = ((tmp*)fParam)->par8;\ 445 par9 = ((tmp*)fParam)->par9;\ 446 if (!batch) delete fParam;\ 447 DEBUG_PROFILE_PROXY_STOP(method)\ 451 #define VOID_METHOD_ARG10(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,type8,par8,type9,par9,type10,par10)\ 452 void _NAME4_(p2,klass,method,par1)(void *in)\ 455 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type10 par10;\ 458 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7,p->par8,p->par9,p->par10);\ 461 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9,type10 par10)\ 463 DEBUG_PROFILE_PROXY_START(method)\ 465 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type10 par10;\ 466 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9,type10 par10):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7),par8(par8),par9(par9),par10(par10) {}\ 468 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7,par8,par9,par10);\ 469 fCallBack = &_NAME4_(p2,klass,method,par1);\ 470 Bool_t batch = ForwardCallBack(1);\ 471 par1 = ((tmp*)fParam)->par1;\ 472 par2 = ((tmp*)fParam)->par2;\ 473 par3 = ((tmp*)fParam)->par3;\ 474 par4 = ((tmp*)fParam)->par4;\ 475 par5 = ((tmp*)fParam)->par5;\ 476 par6 = ((tmp*)fParam)->par6;\ 477 par7 = ((tmp*)fParam)->par7;\ 478 par8 = ((tmp*)fParam)->par8;\ 479 par9 = ((tmp*)fParam)->par9;\ 480 par10 = ((tmp*)fParam)->par10;\ 481 if (!batch) delete fParam;\ 482 DEBUG_PROFILE_PROXY_STOP(method)\ 486 #define VOID_METHOD_ARG11(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,type8,par8,type9,par9,type10,par10,type11,par11)\ 487 void _NAME4_(p2,klass,method,par1)(void *in)\ 490 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type10 par10; type11 par11;\ 493 _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7,p->par8,p->par9,p->par10,p->par11);\ 496 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9,type10 par10,type11 par11)\ 498 DEBUG_PROFILE_PROXY_START(method)\ 500 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type10 par10; type11 par11;\ 501 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9,type10 par10,type11 par11):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7),par8(par8),par9(par9),par10(par10),par11(par11) {}\ 503 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7,par8,par9,par10,par11);\ 504 fCallBack = &_NAME4_(p2,klass,method,par1);\ 505 Bool_t batch = ForwardCallBack(1);\ 506 par1 = ((tmp*)fParam)->par1;\ 507 par2 = ((tmp*)fParam)->par2;\ 508 par3 = ((tmp*)fParam)->par3;\ 509 par4 = ((tmp*)fParam)->par4;\ 510 par5 = ((tmp*)fParam)->par5;\ 511 par6 = ((tmp*)fParam)->par6;\ 512 par7 = ((tmp*)fParam)->par7;\ 513 par8 = ((tmp*)fParam)->par8;\ 514 par9 = ((tmp*)fParam)->par9;\ 515 par10 = ((tmp*)fParam)->par10;\ 516 par11 = ((tmp*)fParam)->par11;\ 517 if (!batch) delete fParam;\ 518 DEBUG_PROFILE_PROXY_STOP(method)\ 522 #define RETURN_METHOD_ARG0_CONST(klass,type,method)\ 523 type _NAME3_(TGWin32,klass,Proxy)::method() const\ 527 ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method();\ 533 #define RETURN_METHOD_ARG0(klass,type,method)\ 534 void _NAME3_(p2,klass,method)(void *in)\ 540 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method();\ 543 type _NAME3_(TGWin32,klass,Proxy)::method()\ 545 DEBUG_PROFILE_PROXY_START(method)\ 551 fCallBack = &_NAME3_(p2,klass,method);\ 552 Bool_t batch = ForwardCallBack(1);\ 553 ret = ((tmp*)fParam)->ret;\ 554 if (!batch) delete fParam;\ 555 DEBUG_PROFILE_PROXY_STOP(method)\ 560 #define RETURN_METHOD_ARG1(klass,type,method,type1,par1)\ 561 void _NAME4_(p2,klass,method,par1)(void *in)\ 564 type1 par1; type ret;\ 567 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1);\ 570 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1)\ 572 DEBUG_PROFILE_PROXY_START(method)\ 575 type1 par1; type ret;\ 576 tmp(type1 par1):par1(par1) {}\ 578 fParam = new tmp(par1);\ 579 fCallBack = &_NAME4_(p2,klass,method,par1);\ 580 Bool_t batch = ForwardCallBack(1);\ 581 par1 = ((tmp*)fParam)->par1;\ 582 ret = ((tmp*)fParam)->ret;\ 583 if (!batch) delete fParam;\ 584 DEBUG_PROFILE_PROXY_STOP(method)\ 589 #define RETURN_METHOD_ARG2(klass,type,method,type1,par1,type2,par2)\ 590 void _NAME4_(p2,klass,method,par1)(void *in)\ 593 type1 par1; type2 par2; type ret;\ 596 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2);\ 599 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2)\ 601 DEBUG_PROFILE_PROXY_START(method)\ 604 type1 par1; type2 par2; type ret;\ 605 tmp(type1 par1,type2 par2):par1(par1),par2(par2) {}\ 607 fParam = new tmp(par1,par2);\ 608 fCallBack = &_NAME4_(p2,klass,method,par1);\ 609 Bool_t batch = ForwardCallBack(1);\ 610 par1 = ((tmp*)fParam)->par1;\ 611 par2 = ((tmp*)fParam)->par2;\ 612 ret = ((tmp*)fParam)->ret;\ 613 if (!batch) delete fParam;\ 614 DEBUG_PROFILE_PROXY_STOP(method)\ 619 #define RETURN_METHOD_ARG3(klass,type,method,type1,par1,type2,par2,type3,par3)\ 620 void _NAME4_(p2,klass,method,par1)(void *in)\ 623 type1 par1; type2 par2; type3 par3; type ret;\ 626 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3);\ 629 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3)\ 631 DEBUG_PROFILE_PROXY_START(method)\ 634 type1 par1; type2 par2; type3 par3; type ret;\ 635 tmp(type1 par1,type2 par2,type3 par3):par1(par1),par2(par2),par3(par3) {}\ 637 fParam = new tmp(par1,par2,par3);\ 638 fCallBack = &_NAME4_(p2,klass,method,par1);\ 639 Bool_t batch = ForwardCallBack(1);\ 640 par1 = ((tmp*)fParam)->par1;\ 641 par2 = ((tmp*)fParam)->par2;\ 642 par3 = ((tmp*)fParam)->par3;\ 643 ret = ((tmp*)fParam)->ret;\ 644 if (!batch) delete fParam;\ 645 DEBUG_PROFILE_PROXY_STOP(method)\ 650 #define RETURN_METHOD_ARG4(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4)\ 651 void _NAME4_(p2,klass,method,par1)(void *in)\ 654 type1 par1; type2 par2; type3 par3; type4 par4; type ret;\ 657 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4);\ 660 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4)\ 662 DEBUG_PROFILE_PROXY_START(method)\ 665 type1 par1; type2 par2; type3 par3; type4 par4; type ret;\ 666 tmp(type1 par1,type2 par2,type3 par3,type4 par4):par1(par1),par2(par2),par3(par3),par4(par4) {}\ 668 fParam = new tmp(par1,par2,par3,par4);\ 669 fCallBack = &_NAME4_(p2,klass,method,par1);\ 670 Bool_t batch = ForwardCallBack(1);\ 671 par1 = ((tmp*)fParam)->par1;\ 672 par2 = ((tmp*)fParam)->par2;\ 673 par3 = ((tmp*)fParam)->par3;\ 674 par4 = ((tmp*)fParam)->par4;\ 675 ret = ((tmp*)fParam)->ret;\ 676 if (!batch) delete fParam;\ 677 DEBUG_PROFILE_PROXY_STOP(method)\ 682 #define RETURN_METHOD_ARG5(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5)\ 683 void _NAME4_(p2,klass,method,par1)(void *in)\ 686 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type ret;\ 689 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5);\ 692 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5)\ 694 DEBUG_PROFILE_PROXY_START(method)\ 697 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type ret;\ 698 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5) {}\ 700 fParam = new tmp(par1,par2,par3,par4,par5);\ 701 fCallBack = &_NAME4_(p2,klass,method,par1);\ 702 Bool_t batch = ForwardCallBack(1);\ 703 par1 = ((tmp*)fParam)->par1;\ 704 par2 = ((tmp*)fParam)->par2;\ 705 par3 = ((tmp*)fParam)->par3;\ 706 par4 = ((tmp*)fParam)->par4;\ 707 par5 = ((tmp*)fParam)->par5;\ 708 ret = ((tmp*)fParam)->ret;\ 709 if (!batch) delete fParam;\ 710 DEBUG_PROFILE_PROXY_STOP(method)\ 715 #define RETURN_METHOD_ARG6(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6)\ 716 void _NAME4_(p2,klass,method,par1)(void *in)\ 719 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type ret;\ 722 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6);\ 725 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6)\ 727 DEBUG_PROFILE_PROXY_START(method)\ 730 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type ret;\ 731 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6) {}\ 733 fParam = new tmp(par1,par2,par3,par4,par5,par6);\ 734 fCallBack = &_NAME4_(p2,klass,method,par1);\ 735 Bool_t batch = ForwardCallBack(1);\ 736 par1 = ((tmp*)fParam)->par1;\ 737 par2 = ((tmp*)fParam)->par2;\ 738 par3 = ((tmp*)fParam)->par3;\ 739 par4 = ((tmp*)fParam)->par4;\ 740 par5 = ((tmp*)fParam)->par5;\ 741 par6 = ((tmp*)fParam)->par6;\ 742 ret = ((tmp*)fParam)->ret;\ 743 if (!batch) delete fParam;\ 744 DEBUG_PROFILE_PROXY_STOP(method)\ 749 #define RETURN_METHOD_ARG7(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7)\ 750 void _NAME4_(p2,klass,method,par1)(void *in)\ 753 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type ret;\ 756 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7);\ 759 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7)\ 761 DEBUG_PROFILE_PROXY_START(method)\ 764 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type ret;\ 765 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7) {}\ 767 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7);\ 768 fCallBack = &_NAME4_(p2,klass,method,par1);\ 769 Bool_t batch = ForwardCallBack(1);\ 770 par1 = ((tmp*)fParam)->par1;\ 771 par2 = ((tmp*)fParam)->par2;\ 772 par3 = ((tmp*)fParam)->par3;\ 773 par4 = ((tmp*)fParam)->par4;\ 774 par5 = ((tmp*)fParam)->par5;\ 775 par6 = ((tmp*)fParam)->par6;\ 776 par7 = ((tmp*)fParam)->par7;\ 777 ret = ((tmp*)fParam)->ret;\ 778 if (!batch) delete fParam;\ 779 DEBUG_PROFILE_PROXY_STOP(method)\ 784 #define RETURN_METHOD_ARG8(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,type8,par8)\ 785 void _NAME4_(p2,klass,method,par1)(void *in)\ 788 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type ret;\ 791 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7,p->par8);\ 794 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8)\ 796 DEBUG_PROFILE_PROXY_START(method)\ 799 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type ret;\ 800 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7),par8(par8) {}\ 802 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7,par8);\ 803 fCallBack = &_NAME4_(p2,klass,method,par1);\ 804 Bool_t batch = ForwardCallBack(1);\ 805 par1 = ((tmp*)fParam)->par1;\ 806 par2 = ((tmp*)fParam)->par2;\ 807 par3 = ((tmp*)fParam)->par3;\ 808 par4 = ((tmp*)fParam)->par4;\ 809 par5 = ((tmp*)fParam)->par5;\ 810 par6 = ((tmp*)fParam)->par6;\ 811 par7 = ((tmp*)fParam)->par7;\ 812 par8 = ((tmp*)fParam)->par8;\ 813 ret = ((tmp*)fParam)->ret;\ 814 if (!batch) delete fParam;\ 815 DEBUG_PROFILE_PROXY_STOP(method)\ 820 #define RETURN_METHOD_ARG9(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,type8,par8,type9,par9)\ 821 void _NAME4_(p2,klass,method,par1)(void *in)\ 824 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type ret;\ 827 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7,p->par8,p->par9);\ 830 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9)\ 832 DEBUG_PROFILE_PROXY_START(method)\ 835 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type ret;\ 836 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7),par8(par8),par9(par9) {}\ 838 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7,par8,par9);\ 839 fCallBack = &_NAME4_(p2,klass,method,par1);\ 840 Bool_t batch = ForwardCallBack(1);\ 841 par1 = ((tmp*)fParam)->par1;\ 842 par2 = ((tmp*)fParam)->par2;\ 843 par3 = ((tmp*)fParam)->par3;\ 844 par4 = ((tmp*)fParam)->par4;\ 845 par5 = ((tmp*)fParam)->par5;\ 846 par6 = ((tmp*)fParam)->par6;\ 847 par7 = ((tmp*)fParam)->par7;\ 848 par8 = ((tmp*)fParam)->par8;\ 849 par9 = ((tmp*)fParam)->par9;\ 850 ret = ((tmp*)fParam)->ret;\ 851 if (!batch) delete fParam;\ 852 DEBUG_PROFILE_PROXY_STOP(method)\ 857 #define RETURN_METHOD_ARG10(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,type8,par8,type9,par9,type10,par10)\ 858 void _NAME4_(p2,klass,method,par1)(void *in)\ 861 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type10 par10; type ret;\ 864 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7,p->par8,p->par9,p->par10);\ 867 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9,type10 par10)\ 869 DEBUG_PROFILE_PROXY_START(method)\ 872 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type10 par10; type ret;\ 873 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9,type10 par10):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7),par8(par8),par9(par9),par10(par10) {}\ 875 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7,par8,par9,par10);\ 876 fCallBack = &_NAME4_(p2,klass,method,par1);\ 877 Bool_t batch = ForwardCallBack(1);\ 878 par1 = ((tmp*)fParam)->par1;\ 879 par2 = ((tmp*)fParam)->par2;\ 880 par3 = ((tmp*)fParam)->par3;\ 881 par4 = ((tmp*)fParam)->par4;\ 882 par5 = ((tmp*)fParam)->par5;\ 883 par6 = ((tmp*)fParam)->par6;\ 884 par7 = ((tmp*)fParam)->par7;\ 885 par8 = ((tmp*)fParam)->par8;\ 886 par9 = ((tmp*)fParam)->par9;\ 887 par10 = ((tmp*)fParam)->par10;\ 888 ret = ((tmp*)fParam)->ret;\ 889 if (!batch) delete fParam;\ 890 DEBUG_PROFILE_PROXY_STOP(method)\ 895 #define RETURN_METHOD_ARG11(klass,type,method,type1,par1,type2,par2,type3,par3,type4,par4,type5,par5,type6,par6,type7,par7,type8,par8,type9,par9,type10,par10,type11,par11)\ 896 void _NAME4_(p2,klass,method,par1)(void *in)\ 899 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type10 par10; type11 par11; type ret;\ 902 p->ret = _NAME3_(TGWin32,klass,Proxy)::RealObject()->method(p->par1,p->par2,p->par3,p->par4,p->par5,p->par6,p->par7,p->par8,p->par9,p->par10,p->par11);\ 905 type _NAME3_(TGWin32,klass,Proxy)::method(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9,type10 par10,type11 par11)\ 907 DEBUG_PROFILE_PROXY_START(method)\ 910 type1 par1; type2 par2; type3 par3; type4 par4; type5 par5; type6 par6; type7 par7; type8 par8; type9 par9; type10 par10; type11 par11; type ret;\ 911 tmp(type1 par1,type2 par2,type3 par3,type4 par4,type5 par5,type6 par6,type7 par7,type8 par8,type9 par9,type10 par10,type11 par11):par1(par1),par2(par2),par3(par3),par4(par4),par5(par5),par6(par6),par7(par7),par8(par8),par9(par9),par10(par10),par11(par11) {}\ 913 fParam = new tmp(par1,par2,par3,par4,par5,par6,par7,par8,par9,par10,par11);\ 914 fCallBack = &_NAME4_(p2,klass,method,par1);\ 915 Bool_t batch = ForwardCallBack(1);\ 916 par1 = ((tmp*)fParam)->par1;\ 917 par2 = ((tmp*)fParam)->par2;\ 918 par3 = ((tmp*)fParam)->par3;\ 919 par4 = ((tmp*)fParam)->par4;\ 920 par5 = ((tmp*)fParam)->par5;\ 921 par6 = ((tmp*)fParam)->par6;\ 922 par7 = ((tmp*)fParam)->par7;\ 923 par8 = ((tmp*)fParam)->par8;\ 924 par9 = ((tmp*)fParam)->par9;\ 925 par10 = ((tmp*)fParam)->par10;\ 926 par11 = ((tmp*)fParam)->par11;\ 927 ret = ((tmp*)fParam)->ret;\ 928 if (!batch) delete fParam;\ 929 DEBUG_PROFILE_PROXY_STOP(method)\
static unsigned int total