|Re: [tracecompass-dev] Design Documents/Aligned X Axis|
I'm going to start my work on the view I need. I hope it will be useful for the community too, so sharing my ideas in order to get your criticism on them.
I need a view that is able to display data from various sources. I had a brief review of the idea implemented in this change . I believe it to be a great solution, but what I really need here is an ability to display charts. For example, line series, especially more than one series on a chart (to compare at a glance).
So, my vision on my new view is as follows:
The view will consist of two main parts: X axis that is shared between inner viewers and a customizable set of lanes. A lane consists of two viewers: legend or list of entities to display and the data itself (Gantt or XY chart) along the X axis. Right now I need two types of lanes: TimeGraph lane and XYChart lane. A prototype of the view looks like this: 
On the prototype one can see 5 lanes and the X axis at the bottom:
- TimeGraph with alarms and two modes;
- XYChart with pressures;
- XYChart with gas concentrations;
- TimeGraph with one more mode that we need to see next to previous XY;
- XYChart with more gases.
The main idea is to create an opportunity to add/remove/modify lanes with various data sources according to a user's wishes.
I'm going to implement the view to be an orchestrator of lanes. The user should be able to add or remove a lane. Lanes will have a property 'type' ('TimeGraph' and 'XY' for the start). Lane's viewers will be based on the type. The user should be able to choose a data provider (or analysis, or a set of them?) according to the lane's type.
As a first step I plan to implement the view using existing viewers that are used by AbstractTimeGraphView and TmfChartView.
Also, I have a question regarding a place where I can start my work. What should I choose: Trace Compass, Incubator or a separate plugin?
First of all, huge (YUGE) thanks for your involvement w/ the community so far! We have been chatting on IRC, but I would like to summarize my (personal) views on the subject.
With respect to the view you are proposing, I have personally on my own time experimented with the idea. I have made a view I jokingly call the "mother of all views".
Now we have data providers and data provider descriptors. We can therefore have a view that gets "every" or a sub-list of all the data providers and puts them in a gantt chart (time graph view)
The time graph view can support line charts now. and bar charts can be added soon(tm) 
With this what's left is the content presentation. Recently presentation providers  have been merged under the name "fetchstyle". I sincerely believe most of the heavier lifting is done. 🙂
Here are some examples of views but they need to be updated.
With this solution, let's compare your requirements
> The main requirements for the new view:
I would estimate this is non-trivial work, but if your priorities are #1 and #2, you can deliver something much faster. The hardest item in my opinion is moving entries/lanes. That is mostly since I haven't put much thought into it though, maybe there's a simple answer out there.
tracecompass-dev-bounces@xxxxxxxxxxx <tracecompass-dev-bounces@xxxxxxxxxxx> on behalf of Grinenko, Ivan <ivan.grinenko@xxxxxxxxxx>
Back to the top