summaryrefslogtreecommitdiff
path: root/TODO.markdown
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2011-11-01 14:26:38 -0700
committerJosé Fonseca <jose.r.fonseca@gmail.com>2011-11-03 11:46:20 +0000
commit33b8ba3bd173bcb6cebbc0d2e1ed3320077a8ac3 (patch)
tree2f0953f6a6a05a2e133d1df7a1ba6f7b9f33de87 /TODO.markdown
parentefa42fafa14fd26ceba4209c8fec61eaada13861 (diff)
TODO: Add some notes on additions we want to the command-line interface
These come from some recent dicussion on the mailing list.
Diffstat (limited to 'TODO.markdown')
-rw-r--r--TODO.markdown57
1 files changed, 57 insertions, 0 deletions
diff --git a/TODO.markdown b/TODO.markdown
index 656fce1..679c5ad 100644
--- a/TODO.markdown
+++ b/TODO.markdown
@@ -56,6 +56,63 @@ GUI
* Breakpointing and step-by-step debugging.
+CLI
+---
+
+* Add trace: Generate a new trace by executing the given program
+* Add retrace Replay all the calls in a trace
+* Add trim Trim a trace by including only the specified calls/frames
+* Add dump-state Output the OpenGL state in JSON format
+* Add dump-images Create image files for each frame/drawing operation of a trace
+* Add diff Identify differences between a trace dump and another trace
+* Add diff-state Identify differences between a state dump and another trace
+* Add diff-images Identify differences between images and another trace
+
+* Add some common command-line options:
+
+ Most commands acting on a trace accept the following common options:
+
+ --calls=[RANGE] Operate only on calls with index numbers within
+ the specified range.
+
+ --frames=[RANGE] Operate only on frames with index numbers within
+ the specified range.
+
+ --functions=[REGEXP] Operate only on function calls which have a
+ name that matches the given regular expression.
+
+ A [RANGE] can be any of the following:
+
+ Example Description
+ ------- -----------
+ 4 A single number specifying a single call or frame.
+
+ 10-20 Two numbers separated by '-' (FIRST-LAST) specifying a
+ range of consecutive calls/frames from FIRST to LAST. If
+ either of FIRST or LAST is omitted, the first or last
+ call/frame index in the trace will be used.
+
+ 1-100/5 Either of the above range specifications followed by '@'
+ and a number (INTERVAL). This specifies the inclusion of
+ only each INTERVAL call/frame within the range. For
+ example, 1-100@5 species frame 1, frame 5, frame 10,
+ ... up to frame 100.
+
+ 4,10-20/2 A comma separated list of any of the above range
+ specifications, specifying the union of the ranges.
+
+* Add some retrace-specific options (-b, -db, -sb, -v)
+
+* Add some trime-specific options (--every={draw,framebuffer,frame})
+
+* Accept a filename for --calls or --functions (to use the same calls
+ or functions as present in a trace dump).
+
+* Add an "apitrace bisect" for trimming down a trace based on user
+ input at each stage.
+
+* Add an "apitrace git-bisect-helper" for calling from git-bisect.
+
Other
-----