Changeset 46368 in vbox for trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server.h
- Timestamp:
- Jun 3, 2013 5:24:51 PM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 86184
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server.h
r46343 r46368 386 386 void crServerInitTmpCtxDispatch(); 387 387 388 //#define VBOX_WITH_CRSERVER_DUMPER 388 389 #ifdef VBOX_WITH_CRSERVER_DUMPER 389 390 void crServerDumpCheckTerm(); 390 391 int crServerDumpCheckInit(); 391 void crServerDumpBuffer( );392 void crServerDumpBuffer(int idx); 392 393 void crServerDumpTextures(); 393 394 #define CR_SERVER_DUMP_F_DRAW_BUFF_ENTER 0x01 395 #define CR_SERVER_DUMP_F_DRAW_BUFF_LEAVE 0x02 396 #define CR_SERVER_DUMP_F_DRAW_TEX_ENTER 0x10 397 #define CR_SERVER_DUMP_F_DRAW_TEX_LEAVE 0x20 398 399 extern int g_CrDbgDumpDraw; 400 bool crServerDumpFilter(int event); 394 void crServerDumpShader(GLint id); 395 void crServerDumpProgram(GLint id); 396 void crServerDumpCurrentProgram(); 397 void crServerDumpFramesCheck(); 398 399 extern unsigned long g_CrDbgDumpDraw; 400 extern unsigned long g_CrDbgDumpDrawFramesSettings; 401 extern unsigned long g_CrDbgDumpDrawFramesAppliedSettings; 402 extern unsigned long g_CrDbgDumpDrawFramesCount; 403 bool crServerDumpFilter(unsigned long event); 404 405 #define CR_SERVER_DUMP_F_DRAW_BUFF_ENTER 0x00000001 406 #define CR_SERVER_DUMP_F_DRAW_BUFF_LEAVE 0x00000002 407 #define CR_SERVER_DUMP_F_DRAW_TEX_ENTER 0x00000010 408 #define CR_SERVER_DUMP_F_DRAW_TEX_LEAVE 0x00000020 409 #define CR_SERVER_DUMP_F_DRAW_PROGRAM_ENTER 0x00000100 410 #define CR_SERVER_DUMP_F_DRAW_PROGRAM_LEAVE 0x00000200 411 412 #define CR_SERVER_DUMP_F_DRAW_ALL (CR_SERVER_DUMP_F_DRAW_BUFF_ENTER | CR_SERVER_DUMP_F_DRAW_BUFF_LEAVE \ 413 | CR_SERVER_DUMP_F_DRAW_TEX_ENTER | CR_SERVER_DUMP_F_DRAW_TEX_LEAVE \ 414 | CR_SERVER_DUMP_F_DRAW_PROGRAM_ENTER | CR_SERVER_DUMP_F_DRAW_PROGRAM_LEAVE) 415 416 #define CR_SERVER_DUMP_F_COMPILE_SHADER 0x00001000 417 #define CR_SERVER_DUMP_F_LINK_PROGRAM 0x00002000 418 #define CR_SERVER_DUMP_F_SWAPBUFFERS_ENTER 0x00010000 419 #define CR_SERVER_DUMP_F_SWAPBUFFERS_LEAVE 0x00020000 401 420 402 421 #define CR_SERVER_DUMP_IF_ANY(_ev) ((g_CrDbgDumpDraw & (_ev)) && crServerDumpFilter((_ev))) 403 422 404 423 #define CR_SERVER_DUMP_DRAW_ENTER() do { \ 405 if (!CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_BUFF_ENTER | CR_SERVER_DUMP_F_DRAW_TEX_ENTER )) break; \424 if (!CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_BUFF_ENTER | CR_SERVER_DUMP_F_DRAW_TEX_ENTER | CR_SERVER_DUMP_F_DRAW_PROGRAM_ENTER)) break; \ 406 425 crServerDumpCheckInit(); \ 407 crDmpStrF(cr_server.Recorder.pDumper, "==> %s\n", __FUNCTION__); \ 408 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_BUFF_ENTER)) { \ 409 crServerDumpBuffer(); \ 410 } \ 411 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_TEX_ENTER)) { \ 412 crServerDumpTextures(); \ 413 } \ 426 crDmpStrF(cr_server.Recorder.pDumper, "==> %s", __FUNCTION__); \ 427 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_PROGRAM_ENTER)) { crServerDumpCurrentProgram(); } \ 428 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_TEX_ENTER)) { crServerDumpTextures(); } \ 429 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_BUFF_ENTER)) { crServerDumpBuffer(-1); } \ 430 crDmpStrF(cr_server.Recorder.pDumper, "=================="); \ 414 431 } while (0) 415 432 416 433 #define CR_SERVER_DUMP_DRAW_LEAVE() do { \ 417 if (!CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_BUFF_LEAVE | CR_SERVER_DUMP_F_DRAW_TEX_LEAVE )) break; \434 if (!CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_BUFF_LEAVE | CR_SERVER_DUMP_F_DRAW_TEX_LEAVE | CR_SERVER_DUMP_F_DRAW_PROGRAM_LEAVE)) break; \ 418 435 crServerDumpCheckInit(); \ 419 crDmpStrF(cr_server.Recorder.pDumper, "<== %s\n", __FUNCTION__); \ 420 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_BUFF_LEAVE)) { \ 421 crServerDumpBuffer(); \ 422 } \ 423 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_TEX_LEAVE)) { \ 424 crServerDumpTextures(); \ 425 } \ 436 crDmpStrF(cr_server.Recorder.pDumper, "<== %s", __FUNCTION__); \ 437 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_BUFF_LEAVE)) { crServerDumpBuffer(-1); } \ 438 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_TEX_LEAVE)) { crServerDumpTextures(); } \ 439 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_DRAW_PROGRAM_LEAVE)) { crServerDumpCurrentProgram(); } \ 440 crDmpStrF(cr_server.Recorder.pDumper, "=================="); \ 426 441 } while (0) 442 443 #define CR_SERVER_DUMP_COMPILE_SHADER(_id) do { \ 444 if (!CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_COMPILE_SHADER)) break; \ 445 crServerDumpCheckInit(); \ 446 crServerDumpShader((_id)); \ 447 } while (0) 448 449 #define CR_SERVER_DUMP_LINK_PROGRAM(_id) do { \ 450 if (!CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_LINK_PROGRAM)) break; \ 451 crServerDumpCheckInit(); \ 452 crServerDumpProgram((_id)); \ 453 } while (0) 454 455 #define CR_SERVER_DUMP_SWAPBUFFERS_ENTER() do { \ 456 if (!g_CrDbgDumpDrawFramesCount && !CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_SWAPBUFFERS_ENTER)) break; \ 457 crServerDumpCheckInit(); \ 458 crDmpStrF(cr_server.Recorder.pDumper, "== %s", __FUNCTION__); \ 459 if (CR_SERVER_DUMP_IF_ANY(CR_SERVER_DUMP_F_SWAPBUFFERS_ENTER)) { crServerDumpBuffer(CR_SERVER_FBO_BB_IDX(cr_server.currentMural)); } \ 460 if (g_CrDbgDumpDrawFramesCount) { crServerDumpFramesCheck(); } \ 461 } while (0) 462 463 #define CR_SERVER_DUMP_SWAPBUFFERS_LEAVE() do {} while (0) 427 464 #else /* if !defined VBOX_WITH_CRSERVER_DUMPER */ 428 465 #define CR_SERVER_DUMP_DRAW_ENTER() do {} while (0) 429 466 #define CR_SERVER_DUMP_DRAW_LEAVE() do {} while (0) 467 #define CR_SERVER_DUMP_COMPILE_SHADER(_id) do {} while (0) 468 #define CR_SERVER_DUMP_LINK_PROGRAM(_id) do {} while (0) 469 #define CR_SERVER_DUMP_SWAPBUFFERS_ENTER() do {} while (0) 470 #define CR_SERVER_DUMP_SWAPBUFFERS_LEAVE() do {} while (0) 430 471 #endif /* !VBOX_WITH_CRSERVER_DUMPER */ 431 472
Note:
See TracChangeset
for help on using the changeset viewer.