[lldb-dev] Graphical lldb

Jose H jose.francisco.hevia at gmail.com
Sat Nov 8 04:00:01 PST 2014


Oh, sorry, I was answering private messages to Greg instead of the
list, I feel so newbie.

> Hello Sean,
>
> Yes, I think so, I need it in a custom window. I have done tests using matplotlib and script, but it lacks interoperability, graphical reaction to mouse-tablet, 3d mouse or trackpad input, a "reactive surface".
>
> Here is what I want to do: I use vectors or arrays all around my code:
>
> 1D vectors like indices of another vector, or sound samples, or tablet pressure, or type identifiers.
>
> 2D vectors for x, y coordinates of vertices, or image segmentation information.
>
> 3D vectors, for 3D points.
>
> A mix of all the above, for example a path is created as a 1D index that points to a 2D vector that holds the path element type like CIRCLE, ARC, LINE, BEZIER CUBIC,BEZIER CUADRATIC and another index that points to the coordinates of the (line, arc or bezier) elements.
>
> Right now for debugging I have to painfully follow those vectors and mentally translating and tracking those in my head, which is extremely slow, error prone, and uses rational power that I should use in other things.
>
> We have tens of  millions of visual sensors and a tremendous parallel computing force in our eyes and brain to analyze them in less than a second and with a text debugger we are not using them at all.
>
> So I need a tool that helps me debugging my programs, that displays a 1D vector for example as a series of rectangles with different colors, so for example CIRCLE = RED, ARC =  BLUE, LINE = GREEEN. and so on so just watching at a glance gives me the path information.
>
> Now when I click on the second red rectangle, it could display me a circle in a canvas, or the line, or the bezier rectangle that I clicked.
>
> Now, this is very easy for me, I have experience making that happen. What I don't have experience is with the lldb environment.
>
> So I want to have something working as fast as possible, then gradually replace text commands with graphical ones, like "Step Into" icons.
>
> But this is the least important thing, at first I will use just custom text commands, but I need to display a reactive canvas that could display data like all the vectors and generate those commands when I click on those.
>
> Just emulating the input and output of text and using the same Driver of lldb-tool should be easy.

PS: by "reactive surface" I mean the ability to navigate the data in
the frame very fast for example using two fingers and the "Magic
trackpad".

Graphically I could see all the local variables, the pointers, and
when it identifies a 1D, 2D, 3D vector type it displays the first 50
elements for example as rectangles,with colors, or numbers if it is an
index, or the "pointed elements" of another vector if it is an index.

Then with just a gesture I could see the next 50 elements of the
vectors, and so on.

I should probably have to make a video to better explain myself.




More information about the lldb-dev mailing list