#include <lttv/state.h>
#include <lttv/filter.h>
#include <lttvwindow/lttvwindow.h>
+#include <lttvwindow/lttv_plugin_tab.h>
#include <ltt/time.h>
#include "hDiskPerformanceInsert.xpm"
#define g_info(format...) g_log (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, format)
#define g_debug(format...) g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, format)
-#define TRACE_NUMBER 0
+// fixed #define TRACE_NUMBER 0
#define NO_ITEMS 0
enum{
typedef struct _DiskPerformanceData {
Tab * tab;
+
+ LttvPluginTab *ptab;
LttvHooks * hooks_trace_after;
GQuark LTT_EVENT_BLOCK_READ;
GQuark LTT_EVENT_BLOCK_WRITE;
-static DiskPerformanceData *disk_performance_data(Tab *tab);
+static DiskPerformanceData *disk_performance_data(LttvPluginTab *ptab);
static void disk_destroy_walk(gpointer data, gpointer user_data);
static gboolean disk_show(void *hook_data, void *call_data);
static gboolean trace_header(void *hook_data, void *call_data);
static void get_event_detail(LttEvent *e, lttv_block* disk_data);
static char * major_minor_to_diskname( lttv_block* disk_data);
static void sum_data(char* diskname, guint size, enum operation_t opt, GArray *disk_array);
-static GtkWidget *disk_performance(Tab * tab);
+static GtkWidget *disk_performance(LttvPlugin *plugin);
static gboolean block_read_callback(void *hook_data, void *call_data);
* Constructor hook
*
*/
-GtkWidget *disk_performance(Tab * tab)
+GtkWidget *disk_performance(LttvPlugin *plugin)
{
-
- DiskPerformanceData* disk_data = disk_performance_data(tab);
- if(disk_data)
+ LttvPluginTab *ptab = LTTV_PLUGIN_TAB(plugin);
+ DiskPerformanceData* disk_data = disk_performance_data(ptab);
+ if(disk_data)
return disk_data->hbox_v;
- else
+ else
return NULL;
}
* This function initializes the Event Viewer functionnality through the
* GTK API.
*/
-DiskPerformanceData *disk_performance_data(Tab *tab)
+DiskPerformanceData *disk_performance_data(LttvPluginTab *ptab)
{
LttTime end;
GtkTreeViewColumn *column;
DiskPerformanceData* disk_data = g_new(DiskPerformanceData,1) ;
g_info("enter disk_performance_data \n");
-
+ Tab *tab = ptab->tab;
disk_data->tab = tab;
+ disk_data->ptab = ptab;
disk_data->time_window = lttvwindow_get_time_window(tab);
disk_data->disk_array = g_array_new(FALSE, FALSE, sizeof(lttv_total_block ));
nb_trace = lttv_traceset_number(traceset);
- for(i = 0; i<MIN(TRACE_NUMBER+1, nb_trace);i++)
- {
+ //for(i = 0; i<MIN(TRACE_NUMBER+1, nb_trace);i++) {
+ for(i = 0 ; i < nb_trace ; i++) {
EventsRequest *events_request = g_new(EventsRequest, 1);
hooks = g_array_new(FALSE, FALSE, sizeof(LttvTraceHook));