Files
DRAMSys/analyzer/analyzer/mainwindow.cpp
2014-07-10 11:16:16 +02:00

40 lines
1.5 KiB
C++

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "traceDB.h"
#include "xmldeserializer.h"
#include <qwt_plot.h>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
// xmlDeserializer des("config.xml");
// des.xmlToTraceDB("tpr.xml")
db = new TraceDB("tpr.tdb", true);
traceNavigator = new TraceNavigator(db->getGeneralInfo(), this);
ui->tracePlot->init(traceNavigator, db);
ui->pornoTraceScroller->init(traceNavigator, db, ui->tracePlot);
phases = db->getPhasesInTimespan(traceNavigator->GeneralTraceInfo().TraceSpan());
transactions = db->getTransactionsInTimespan(traceNavigator->GeneralTraceInfo().TraceSpan());
ui->qwtPlot->setAxisScale(QwtPlot::xBottom,traceNavigator->GeneralTraceInfo().TraceSpan().Begin(),traceNavigator->GeneralTraceInfo().TraceSpan().End());
unsigned int banksize = traceNavigator -> GeneralTraceInfo().NumberOfBanks();
ui->qwtPlot->setAxisScale(QwtPlot::yLeft,0.0,banksize + 3, 1.0);
PhaseCollectionDrawingProperties* drawingProperties = new PhaseCollectionDrawingProperties(banksize,this);
drawingProperties->setDrawText(false);
drawingProperties->setDrawBorder(false);
drawingProperties->setDrawPowerDownStates(false);
phaseCollectionPlotItem *phaseCollectionPlot = new phaseCollectionPlotItem(phases,transactions,drawingProperties);
phaseCollectionPlot->attach(ui->qwtPlot);
traceNavigator->navigateToTime(0);
}
MainWindow::~MainWindow()
{
delete ui;
}