1b8e80941Smrg                              RBUG PIPE DRIVER
2b8e80941Smrg
3b8e80941Smrg
4b8e80941Smrg= About =
5b8e80941Smrg
6b8e80941SmrgThis directory contains a Gallium3D remote debugger pipe driver.
7b8e80941SmrgIt provides remote debugging functionality.
8b8e80941Smrg
9b8e80941Smrg
10b8e80941Smrg= Usage =
11b8e80941Smrg
12b8e80941SmrgDo
13b8e80941Smrg
14b8e80941Smrg   GALLIUM_RBUG=true progs/trivial/tri
15b8e80941Smrg
16b8e80941Smrgwhich should open gallium remote debugging session. While the program is running
17b8e80941Smrgyou can launch the small remote debugging application from progs/rbug. More
18b8e80941Smrginformation is in that directory. Also for a gui see:
19b8e80941Smrg
20b8e80941Smrg   http://cgit.freedesktop.org/mesa/rbug-gui
21b8e80941Smrg
22b8e80941Smrg
23b8e80941Smrg= Integrating =
24b8e80941Smrg
25b8e80941SmrgYou can integrate the rbug pipe driver either inside the state tracker or the 
26b8e80941Smrgtarget. The procedure on both cases is the same. Let's assume you have a 
27b8e80941Smrgpipe_screen obtained by the usual means (variable and function names are just
28b8e80941Smrgfor illustration purposes):
29b8e80941Smrg
30b8e80941Smrg  real_screen = real_screen_create(...);
31b8e80941Smrg
32b8e80941SmrgThe rbug screen is then created by doing
33b8e80941Smrg
34b8e80941Smrg  rbug_screen = rbug_screen_create(real_screen);
35b8e80941Smrg
36b8e80941SmrgYou can then simply use rbug_screen instead of real_screen.
37b8e80941Smrg
38b8e80941SmrgYou can create as many contexts you wish from rbug_screen::context_create they
39b8e80941Smrgare automatically wrapped by rbug_screen.
40b8e80941Smrg
41b8e80941Smrg
42b8e80941Smrg--
43b8e80941SmrgJose Fonseca <jfonseca@vmware.com>
44b8e80941SmrgJakob Bornecrantz <jakob@vmware.com>
45