1                             TRACE PIPE DRIVER
2
3
4= About =
5
6This directory contains a Gallium3D trace debugger pipe driver.
7It can traces all incoming calls.
8
9
10= Usage =
11
12== Tracing ==
13
14For tracing then do
15
16 GALLIUM_TRACE=tri.trace trivial/tri
17
18which should create a tri.trace file, which is an XML file. You can view copying
19trace.xsl to the same directory, and opening with a XSLT capable browser such as
20Firefox or Internet Explorer.
21
22For long traces you can use the
23
24  src/gallium/tools/trace/dump.py tri.trace | less -R
25
26
27== Remote debugging ==
28
29For remote debugging see:
30
31  src/gallium/auxiliary/driver_rbug/README
32
33
34= Integrating =
35
36You can integrate the trace pipe driver either inside the gallium frontend or the
37target. The procedure on both cases is the same. Let's assume you have a
38pipe_screen obtained by the usual means (variable and function names are just
39for illustration purposes):
40
41  real_screen = real_screen_create(...);
42
43The trace screen is then created by doing
44
45  trace_screen = trace_screen_create(real_screen);
46
47You can then simply use trace_screen instead of real_screen.
48
49You can create as many contexts you wish from trace_screen::context_create they
50are automatically wrapped by trace_screen.
51
52
53--
54Jose Fonseca <jfonseca@vmware.com>
55Jakob Bornecrantz <jakob@vmware.com>
56