From 0873fbaee59a9be21e0486fdc1701988df247163 Mon Sep 17 00:00:00 2001 From: Iron Prando da Silva Date: Fri, 4 Feb 2022 09:36:47 +0100 Subject: [PATCH] Finished refactoring. --- DRAMSys/traceAnalyzer/CMakeLists.txt | 10 ++-- .../configurations/DDR3Configuration.cpp | 11 ++++ .../configurations/DDR3Configuration.h | 14 +++++ .../configurations/configurationIF.cpp | 53 +++++++++++++++++++ .../configurations/configurationIF.h | 29 ++++++++++ .../configurationfactory.cpp} | 31 +++++------ .../configurationfactory.h} | 12 ++--- .../dbEntries/dbphaseentryIF.h | 2 +- .../DDR3TimeDependencies.cpp | 0 .../DDR3TimeDependencies.h | 0 .../activatewindowpoolcontroller.cpp | 0 .../activatewindowpoolcontroller.h | 0 .../dramtimedependenciesIF.cpp | 16 ------ .../dramtimedependenciesIF.h | 2 - .../phasedependenciestracker.cpp | 26 ++++----- .../phasedependenciestracker.h | 6 +-- DRAMSys/traceAnalyzer/tracefiletab.cpp | 4 +- 17 files changed, 152 insertions(+), 64 deletions(-) create mode 100644 DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/DDR3Configuration.cpp create mode 100644 DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/DDR3Configuration.h create mode 100644 DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationIF.cpp create mode 100644 DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationIF.h rename DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/{devices/dramtimedependencyfactory.cpp => configurations/configurationfactory.cpp} (67%) rename DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/{devices/dramtimedependencyfactory.h => configurations/configurationfactory.h} (87%) rename DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/{devices => deviceDependencies}/DDR3TimeDependencies.cpp (100%) rename DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/{devices => deviceDependencies}/DDR3TimeDependencies.h (100%) rename DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/{devices => deviceDependencies}/activatewindowpoolcontroller.cpp (100%) rename DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/{devices => deviceDependencies}/activatewindowpoolcontroller.h (100%) rename DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/{devices => deviceDependencies}/dramtimedependenciesIF.cpp (92%) rename DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/{devices => deviceDependencies}/dramtimedependenciesIF.h (97%) diff --git a/DRAMSys/traceAnalyzer/CMakeLists.txt b/DRAMSys/traceAnalyzer/CMakeLists.txt index c78fa08b..fdff7577 100644 --- a/DRAMSys/traceAnalyzer/CMakeLists.txt +++ b/DRAMSys/traceAnalyzer/CMakeLists.txt @@ -104,10 +104,12 @@ add_executable(TraceAnalyzer businessObjects/dependencymodels.cpp businessObjects/dramTimeDependencies/dbEntries/DDR3dbphaseentry.cpp - businessObjects/dramTimeDependencies/devices/activatewindowpoolcontroller.cpp - businessObjects/dramTimeDependencies/devices/dramtimedependenciesIF.cpp - businessObjects/dramTimeDependencies/devices/DDR3TimeDependencies.cpp - businessObjects/dramTimeDependencies/devices/dramtimedependencyfactory.cpp + businessObjects/dramTimeDependencies/deviceDependencies/activatewindowpoolcontroller.cpp + businessObjects/dramTimeDependencies/deviceDependencies/dramtimedependenciesIF.cpp + businessObjects/dramTimeDependencies/deviceDependencies/DDR3TimeDependencies.cpp + businessObjects/dramTimeDependencies/configurations/configurationfactory.cpp + businessObjects/dramTimeDependencies/configurations/configurationIF.cpp + businessObjects/dramTimeDependencies/configurations/DDR3Configuration.cpp businessObjects/dramTimeDependencies/phasedependenciestracker.cpp selectmetrics.ui diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/DDR3Configuration.cpp b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/DDR3Configuration.cpp new file mode 100644 index 00000000..d9ab5d36 --- /dev/null +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/DDR3Configuration.cpp @@ -0,0 +1,11 @@ + +#include "DDR3Configuration.h" + +DDR3Configuration::DDR3Configuration(const TraceDB& tdb) { + mDeviceDeps = std::make_shared(std::forward(mGetMemspec(tdb)), mGetClk(tdb)); + +} + +std::shared_ptr DDR3Configuration::makePhaseEntry(const QSqlQuery& query) const { + return std::make_shared(query); +} diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/DDR3Configuration.h b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/DDR3Configuration.h new file mode 100644 index 00000000..f1e64fa2 --- /dev/null +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/DDR3Configuration.h @@ -0,0 +1,14 @@ + +#pragma once + +#include "configurationIF.h" +#include "businessObjects/dramTimeDependencies/deviceDependencies/DDR3TimeDependencies.h" +#include "businessObjects/dramTimeDependencies/dbEntries/DDR3dbphaseentry.h" + +class DDR3Configuration : public ConfigurationIF { + public: + DDR3Configuration(const TraceDB& tdb); + + std::shared_ptr makePhaseEntry(const QSqlQuery&) const override; + +}; diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationIF.cpp b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationIF.cpp new file mode 100644 index 00000000..a2fb31e5 --- /dev/null +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationIF.cpp @@ -0,0 +1,53 @@ + +#include "configurationIF.h" + +const uint ConfigurationIF::getClk() const { + if (!mDeviceDeps) + throw std::invalid_argument("Invalid DRAMTimeDependenciesIF object in 'ConfigurationIF::getClk'."); + + return mDeviceDeps->getClk(); +} + +DependencyMap ConfigurationIF::getDependencies(std::vector& commands) const { + if (!mDeviceDeps) + throw std::invalid_argument("Invalid DRAMTimeDependenciesIF object in 'ConfigurationIF::getDependencies'."); + + return mDeviceDeps->getDependencies(commands); +} + +ActivateWindowPoolController ConfigurationIF::getAWPools() const { + if (!mDeviceDeps) + throw std::invalid_argument("Invalid DRAMTimeDependenciesIF object in 'ConfigurationIF::getAWPools'."); + + return mDeviceDeps->getAWPools(); +} + +const QString ConfigurationIF::getDeviceName(const TraceDB& tdb) { + return mGetMemspec(tdb)["memoryType"].toString(); +} + +const uint ConfigurationIF::mGetClk(const TraceDB& tdb) { + QSqlDatabase db = tdb.getDatabase(); + QString query = "SELECT clk FROM GeneralInfo"; + QSqlQuery sqlQuery = db.exec(query); + + sqlQuery.next(); + uint clock = sqlQuery.value(0).toLongLong(); + sqlQuery.finish(); + + return clock; +} + +const QJsonObject ConfigurationIF::mGetMemspec(const TraceDB& tdb) { + QSqlDatabase db = tdb.getDatabase(); + QString query = "SELECT Memspec FROM GeneralInfo"; + QSqlQuery sqlQuery = db.exec(query); + + sqlQuery.next(); + QString memSpecJson = sqlQuery.value(0).toString(); + sqlQuery.finish(); + + QJsonDocument jsonDocument = QJsonDocument::fromJson(memSpecJson.toUtf8()); + + return jsonDocument.object()["memspec"].toObject(); +} diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationIF.h b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationIF.h new file mode 100644 index 00000000..26563123 --- /dev/null +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationIF.h @@ -0,0 +1,29 @@ + +#pragma once + +#include + +#include "businessObjects/dramTimeDependencies/deviceDependencies/dramtimedependenciesIF.h" +#include "businessObjects/dramTimeDependencies/dbEntries/dbphaseentryIF.h" + +class ConfigurationIF { + public: + ConfigurationIF() {}; + virtual ~ConfigurationIF() = default; + + virtual std::shared_ptr makePhaseEntry(const QSqlQuery&) const { return nullptr; } + + // Delegated methods + const uint getClk() const; + DependencyMap getDependencies(std::vector& commands) const; + ActivateWindowPoolController getAWPools() const; + + static const QString getDeviceName(const TraceDB& tdb); + + protected: + std::shared_ptr mDeviceDeps = nullptr; + + static const uint mGetClk(const TraceDB& tdb); + static const QJsonObject mGetMemspec(const TraceDB& tdb); + +}; diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependencyfactory.cpp b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationfactory.cpp similarity index 67% rename from DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependencyfactory.cpp rename to DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationfactory.cpp index 0377fe3b..154e18e0 100644 --- a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependencyfactory.cpp +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationfactory.cpp @@ -33,46 +33,41 @@ * Iron Prando da Silva */ -#include "dramtimedependencyfactory.h" +#include "configurationfactory.h" -std::shared_ptr DRAMTimeDependencyFactory::make(const TraceDB& tdb) { - uint clk = 0; - const QJsonObject& memspec = DRAMTimeDependenciesIF::getMemspec(tdb, clk); - QString deviceType = memspec["memoryType"].toString(); +std::shared_ptr ConfigurationFactory::make(const TraceDB& tdb) { + const QString deviceName = ConfigurationIF::getDeviceName(tdb); - if (deviceType == "DDR3") { - return std::make_shared(memspec, clk); + if (deviceName == "DDR3") { + return std::make_shared(tdb); } else { // TODO maybe throw? - throw std::invalid_argument("Could not find the device type '" + deviceType.toStdString() + '\''); + throw std::invalid_argument("Could not find the device type '" + deviceName.toStdString() + '\''); } } -const std::vector DRAMTimeDependencyFactory::possiblePhases(const TraceDB& tdb) { - uint clk; // Not used - const QJsonObject& memspec = DRAMTimeDependenciesIF::getMemspec(tdb, clk); - QString deviceType = memspec["memoryType"].toString(); +const std::vector ConfigurationFactory::possiblePhases(const TraceDB& tdb) { + const QString deviceName = ConfigurationIF::getDeviceName(tdb); - if (deviceType == "DDR3") { + if (deviceName == "DDR3") { return DDR3TimeDependencies::getPossiblePhases(); } else { // TODO maybe throw? - throw std::invalid_argument("Could not find the device type '" + deviceType.toStdString() + '\''); + throw std::invalid_argument("Could not find the device type '" + deviceName.toStdString() + '\''); } } -bool DRAMTimeDependencyFactory::deviceSupported(const TraceDB& tdb) { +bool ConfigurationFactory::deviceSupported(const TraceDB& tdb) { uint clk; // Not used - const QJsonObject& memspec = DRAMTimeDependenciesIF::getMemspec(tdb, clk); - QString deviceType = memspec["memoryType"].toString(); + const QString deviceName = ConfigurationIF::getDeviceName(tdb); - if (deviceType == "DDR3") { + if (deviceName == "DDR3") { return true; } else { diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependencyfactory.h b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationfactory.h similarity index 87% rename from DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependencyfactory.h rename to DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationfactory.h index 566d378b..f732e83b 100644 --- a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependencyfactory.h +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/configurations/configurationfactory.h @@ -37,19 +37,19 @@ #include -#include "dramtimedependenciesIF.h" -#include "DDR3TimeDependencies.h" +#include "configurationIF.h" +#include "DDR3Configuration.h" #include "data/tracedb.h" -class DRAMTimeDependencyFactory { +class ConfigurationFactory { public: - static std::shared_ptr make(const TraceDB& tdb); + static std::shared_ptr make(const TraceDB& tdb); static const std::vector possiblePhases(const TraceDB& tdb); static bool deviceSupported(const TraceDB& tdb); private: - DRAMTimeDependencyFactory() = delete; - ~DRAMTimeDependencyFactory() = delete; + ConfigurationFactory() = delete; + ~ConfigurationFactory() = delete; }; diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/dbEntries/dbphaseentryIF.h b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/dbEntries/dbphaseentryIF.h index 4b342b09..d86593c1 100644 --- a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/dbEntries/dbphaseentryIF.h +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/dbEntries/dbphaseentryIF.h @@ -9,7 +9,7 @@ class DBPhaseEntryIF { public: DBPhaseEntryIF() = default; - ~DBPhaseEntryIF() = default; + virtual ~DBPhaseEntryIF() = default; virtual bool potentialDependency(const TimeDependency& dep, const std::shared_ptr otherPhase) const { return false; } diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/DDR3TimeDependencies.cpp b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/DDR3TimeDependencies.cpp similarity index 100% rename from DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/DDR3TimeDependencies.cpp rename to DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/DDR3TimeDependencies.cpp diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/DDR3TimeDependencies.h b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/DDR3TimeDependencies.h similarity index 100% rename from DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/DDR3TimeDependencies.h rename to DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/DDR3TimeDependencies.h diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/activatewindowpoolcontroller.cpp b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/activatewindowpoolcontroller.cpp similarity index 100% rename from DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/activatewindowpoolcontroller.cpp rename to DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/activatewindowpoolcontroller.cpp diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/activatewindowpoolcontroller.h b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/activatewindowpoolcontroller.h similarity index 100% rename from DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/activatewindowpoolcontroller.h rename to DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/activatewindowpoolcontroller.h diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependenciesIF.cpp b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/dramtimedependenciesIF.cpp similarity index 92% rename from DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependenciesIF.cpp rename to DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/dramtimedependenciesIF.cpp index c101f468..133b5655 100644 --- a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependenciesIF.cpp +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/dramtimedependenciesIF.cpp @@ -73,22 +73,6 @@ ActivateWindowPoolController DRAMTimeDependenciesIF::getAWPools() const { return ActivateWindowPoolController(mPoolSizes); } -const QJsonObject DRAMTimeDependenciesIF::getMemspec(const TraceDB& tdb, uint& tCK) { - QSqlDatabase db = tdb.getDatabase(); - QString query = "SELECT clk, Memspec FROM GeneralInfo"; - QSqlQuery sqlQuery = db.exec(query); - - sqlQuery.next(); - tCK = sqlQuery.value(0).toInt(); - QString memSpecJson = sqlQuery.value(1).toString(); - sqlQuery.finish(); - - QJsonDocument jsonDocument = QJsonDocument::fromJson(memSpecJson.toUtf8()); - - return jsonDocument.object()["memspec"].toObject(); - -} - void DRAMTimeDependenciesIF::mFilterDependencyList(std::vector& dependencyList, const std::vector& dependencyFilter) const { std::vector newDepList(dependencyList.size()); diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependenciesIF.h b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/dramtimedependenciesIF.h similarity index 97% rename from DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependenciesIF.h rename to DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/dramtimedependenciesIF.h index aae43e0b..512000b9 100644 --- a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/devices/dramtimedependenciesIF.h +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/deviceDependencies/dramtimedependenciesIF.h @@ -46,8 +46,6 @@ public: DependencyMap getDependencies(std::vector& dependencyFilter) const; - static const QJsonObject getMemspec(const TraceDB& tdb, uint& tCK); - const uint getClk() const { return tCK; } ActivateWindowPoolController getAWPools() const; diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/phasedependenciestracker.cpp b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/phasedependenciestracker.cpp index 58f2a650..5272d774 100644 --- a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/phasedependenciestracker.cpp +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/phasedependenciestracker.cpp @@ -37,15 +37,17 @@ void PhaseDependenciesTracker::calculateDependencies(TraceDB& tdb, std::vector& commands) { + auto deviceConfig = ConfigurationFactory::make(tdb); + mBeginTransaction(tdb); mDropTable(tdb); - if (commands.size() > 0) { - auto& phases = mGetFilteredPhases(tdb, commands); + if (commands.size() > 0) { + auto& phases = mGetFilteredPhases(deviceConfig, tdb, commands); if (phases.size() != 0) { - auto& entries = mCalculateDependencies(tdb, phases, commands); + auto& entries = mCalculateDependencies(deviceConfig, phases, commands); if (entries.size() > 0) { mCreateTable(tdb); @@ -121,7 +123,7 @@ void PhaseDependenciesTracker::mInsertIntoTable(TraceDB& tdb, const std::vector< } const std::vector> -PhaseDependenciesTracker::mGetFilteredPhases(TraceDB& tdb, const std::vector& commands) { +PhaseDependenciesTracker::mGetFilteredPhases(const std::shared_ptr deviceConfig, TraceDB& tdb, const std::vector& commands) { std::vector> phases; QString queryStr = "SELECT Phases.*, Transactions.TBank, Transactions.TBankgroup, Transactions.TRank " @@ -160,7 +162,7 @@ PhaseDependenciesTracker::mGetFilteredPhases(TraceDB& tdb, const std::vector(query); + phases[rowIt] = deviceConfig->makePhaseEntry(query); ++rowIt; } while (query.next()); @@ -175,22 +177,22 @@ PhaseDependenciesTracker::mGetFilteredPhases(TraceDB& tdb, const std::vector -PhaseDependenciesTracker::mCalculateDependencies(const TraceDB& tdb, const std::vector>& phases, std::vector& commands) { +PhaseDependenciesTracker::mCalculateDependencies(const std::shared_ptr deviceConfig, const std::vector>& phases, std::vector& commands) { std::vector entries; entries.reserve((size_t) (0.4 * phases.size())); - // Get dependencies for tdb device - auto device = DRAMTimeDependencyFactory::make(tdb); - DependencyMap deviceDependencies = device->getDependencies(commands); + // Get dependencies for device + DependencyMap deviceDependencies = deviceConfig->getDependencies(commands); // Tries to find all timing dependencies for each phase on the trace - ActivateWindowPoolController poolController = device->getAWPools(); + ActivateWindowPoolController poolController = deviceConfig->getAWPools(); for (size_t i = 1; i < phases.size(); i++) { // NAW dependencies variables reset poolController.clear(); // Auxiliary variables - const auto& phase = phases[i]; + const auto phase = phases[i]; + if (phase == nullptr) continue; // Get time dependency descriptions for the current phase const auto& deps = deviceDependencies.at(phase->phaseName); @@ -256,7 +258,7 @@ PhaseDependenciesTracker::mCalculateDependencies(const TraceDB& tdb, const std:: } // Capture command bus dependencies - if (timeDiff == device->getClk()) { + if (timeDiff == deviceConfig->getClk()) { entries.emplace_back(DBDependencyEntry{ phase->id, phase->phaseName, diff --git a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/phasedependenciestracker.h b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/phasedependenciestracker.h index 0a552abe..b4ce10bf 100644 --- a/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/phasedependenciestracker.h +++ b/DRAMSys/traceAnalyzer/businessObjects/dramTimeDependencies/phasedependenciestracker.h @@ -40,7 +40,7 @@ #include #include "data/tracedb.h" -#include "devices/dramtimedependencyfactory.h" +#include "configurations/configurationfactory.h" #include "common/common.h" class PhaseDependenciesTracker { @@ -52,8 +52,8 @@ private: static void mCreateTable(TraceDB& tdb); static void mInsertIntoTable(TraceDB& tdb, const std::vector& entries); - static const std::vector> mGetFilteredPhases(TraceDB& tdb, const std::vector& commands); - static const std::vector mCalculateDependencies(const TraceDB& tdb, const std::vector>& phases, std::vector& commands); + static const std::vector> mGetFilteredPhases(const std::shared_ptr, TraceDB& tdb, const std::vector& commands); + static const std::vector mCalculateDependencies(const std::shared_ptr, const std::vector>& phases, std::vector& commands); static QSqlQuery mExecuteQuery(TraceDB& tdb, const QString queryStr); diff --git a/DRAMSys/traceAnalyzer/tracefiletab.cpp b/DRAMSys/traceAnalyzer/tracefiletab.cpp index 0aa87b3e..23e61f20 100644 --- a/DRAMSys/traceAnalyzer/tracefiletab.cpp +++ b/DRAMSys/traceAnalyzer/tracefiletab.cpp @@ -193,7 +193,7 @@ void TraceFileTab::setUpCommentView() } void TraceFileTab::setUpPossiblePhases() { - const auto possiblePhases = DRAMTimeDependencyFactory::possiblePhases(navigator->TraceFile()); + const auto possiblePhases = ConfigurationFactory::possiblePhases(navigator->TraceFile()); for (auto p : possiblePhases) { auto item = new QListWidgetItem(p, ui->depTabPossiblePhases); item->setFlags(item->flags() | Qt::ItemIsUserCheckable); // set checkable flag @@ -201,7 +201,7 @@ void TraceFileTab::setUpPossiblePhases() { } - ui->calculateDependencies->setEnabled(DRAMTimeDependencyFactory::deviceSupported(navigator->TraceFile())); + ui->calculateDependencies->setEnabled(ConfigurationFactory::deviceSupported(navigator->TraceFile())); } void TraceFileTab::tracefileChanged()