History log of /sdk/eclipse/plugins/com.android.ide.eclipse.gldebugger/src/com/android/ide/eclipse/gltrace/model/GLTrace.java
Revision Date Author Comments
91c8d33d2ee8eea628e340200cb962c90e7af43a 21-Sep-2012 Siva Velusamy <vsiva@google.com> gltrace: Do not save thumbnail images in memory

These were originally saved with the idea that if the trace file
itself was overwritten after it was parsed, we could display
the thumbnail image atleast since we don't have access to the full
image anymore.

However, this hasn't turned out to be a common case, but it just
uses up memory for large traces.

Change-Id: I1152e23f29563f47b6818b89c5a50bf5ce2a5084
eabd4728ba5497fcb793576bf0619b27bbb1e919 07-Feb-2012 Siva Velusamy <vsiva@google.com> gltrace: Use half-open ranges when defining frames.

A GLFrame maintains the start and end indices of the GL Calls
composing that frame. Currently, the indices comprise a closed
range (i.e. include both the call at the start index and the call
at the end index). This patch makes it a half open range (the
end index is excluded) to make things easy to follow.

Change-Id: Ie44b56a32d002595493b11f496ebf123072f8962
2d2ce406cbba6d31981db8f9fcea7ad6d2174d18 01-Feb-2012 Siva Velusamy <vsiva@google.com> gltrace: Display Calls in a Hierarchy

This patch uses the gl extensions glPushMarker and glPopMarker in
the trace file to construct call hierarchies. The call hierarchies
are then displayed in a tree view.

In order to perform this, the main widget in the GLFunctionTraceViewer
has been changed from a Table to a Tree. The model for the tree
is GLCallNode, which is a thin wrapper on top of a GLCall.

A hierarchy can only be displayed if there is a single context
that is being viewed. If a trace file has multiple contexts, then
a context selector Combo box is provided that controls which
context is being viewed.

Change-Id: I043db99c15dfcc179fcffb656f3ffd2d9864f848
6e179c18c2791a64b4023b4574400f8048cc2a12 12-Jan-2012 Siva Velusamy <vsiva@google.com> gltrace: state view improvements

The GL State View currently utilizes a single tree and switches
the underlying model depending on which editor is active. This causes
loss of context when switching between editors.

This patch makes the state view behave more like the Eclipse Outline
View. State View now inherits from PageBookView, and it allows each
editor to supply whatever controls it wants to display in the view.
Each editor supplies an instance of StateViewPage based on the state
of the trace in the editor.

This patch also moves the state information out of the GLTrace object
and into the StateViewPage.

Change-Id: Ied827ffc53ebba835f1617126068eb3de50f12d4
ab6d02d04c8bb37506b1844590ab52c5c7d794e7 11-Jan-2012 Siva Velusamy <vsiva@google.com> gltrace: associate state transformations with calls.

Currently, the top level GLTrace object holds a list of
state transformations associated with each GLCall. This
patch moves the state transformations into the GLCall itself.

Change-Id: I320c4b38d1ba19c230adc12c71d57f911582b55a
b1ed1ef0c4af1f6f61b4337ac87372047e9c2181 11-Jan-2012 Siva Velusamy <vsiva@google.com> gltrace: map calls to frame after sort by start time.

If the trace contains multiple contexts, calls from multiple
contexts may be out of order. Hence the calls are sorted by start
time when the trace is read.

Currently, calls are assigned to frames when they are first read
in from the trace file. This patch performs this assignment once
the calls are sorted.

Change-Id: I7a1b51fac18249cb965756b567d4245d783647ee
b27d365d27c45e0bad310b6e8f832a52e227865a 04-Jan-2012 Siva Velusamy <vsiva@google.com> gltrace: add a graphical way to select frames

This patch adds a graphical canvas on which the following elements
are rendered:
- a scale showing the list of frames
- when a particular frame[s] is selected, the duration of
the GL calls is displayed as a graph.

The GL call table view listens to selection events from this canvas
and displays the appropriate function calls based on the selection.

Change-Id: Icc8b2bc13547a06103d90f3d5c1f3a764511752b
5e381c5ad46e68313b3642efceb3dea0abea0e1c 14-Dec-2011 Siva Velusamy <vsiva@google.com> gltrace: show context id corresponding to gl functions

Add a column in the GL function trace view that shows the
GL Context in which the function was called.

Change-Id: Idedc821c66ec57eb2d4c997ad4cc936e1fe472b8
235fcab659a1f633d3b97a18a115e24fa8dd6308 06-Dec-2011 Siva Velusamy <vsiva@google.com> gltrace: do not store images in memory

Protocol buffer messages can optionally contain the contents of the
framebuffer. These messages are then really large in size. Rather
than storing all of these messages in memory, we remove the image
data from the message and store a pointer (offset in file) to the
image in file. When needed, the trace file is read again to retrieve
the image.

Change-Id: I3d0c65026bba29efc5e31d8c251582fdaa068c64