Missed some potentially unnecessary database queries of the dependencies.
This commit is contained in:
@@ -141,12 +141,12 @@ vector<shared_ptr<Transaction>> TraceDB::getTransactionsWithCustomQuery(
|
||||
}
|
||||
|
||||
vector<shared_ptr<Transaction>> TraceDB::getTransactionsInTimespan(
|
||||
const Timespan &span)
|
||||
const Timespan &span, bool updateVisiblePhases)
|
||||
{
|
||||
selectTransactionsByTimespan.bindValue(":begin", span.Begin());
|
||||
selectTransactionsByTimespan.bindValue(":end", span.End());
|
||||
executeQuery(selectTransactionsByTimespan);
|
||||
return parseTransactionsFromQuery(selectTransactionsByTimespan, true);
|
||||
return parseTransactionsFromQuery(selectTransactionsByTimespan, updateVisiblePhases);
|
||||
}
|
||||
|
||||
void TraceDB::updateDependenciesInTimespan(const Timespan &span)
|
||||
|
||||
@@ -88,7 +88,7 @@ public:
|
||||
std::vector<std::shared_ptr<Transaction>> getTransactionsWithCustomQuery(
|
||||
QString queryText);
|
||||
std::vector<std::shared_ptr<Transaction>> getTransactionsInTimespan(
|
||||
const Timespan &span);
|
||||
const Timespan &span, bool updateVisiblePhases = false);
|
||||
std::shared_ptr<Transaction> getNextPrecharge(traceTime time);
|
||||
std::shared_ptr<Transaction> getNextActivate(traceTime time);
|
||||
std::shared_ptr<Transaction> getNextRefresh(traceTime time);
|
||||
|
||||
@@ -506,9 +506,11 @@ void TracePlot::setZoomLevel(traceTime newZoomLevel)
|
||||
|
||||
void TracePlot::currentTraceTimeChanged()
|
||||
{
|
||||
bool drawDependencies = getDrawingProperties().drawDependenciesOption.draw != DependencyOption::Disabled;
|
||||
|
||||
transactions = navigator->TraceFile().getTransactionsInTimespan(
|
||||
GetCurrentTimespan());
|
||||
if (getDrawingProperties().drawDependenciesOption.draw != DependencyOption::Disabled) {
|
||||
GetCurrentTimespan(), drawDependencies);
|
||||
if (drawDependencies) {
|
||||
navigator->TraceFile().updateDependenciesInTimespan(GetCurrentTimespan());
|
||||
|
||||
}
|
||||
|
||||
@@ -193,12 +193,14 @@ void TraceScroller::colorGroupingChanged(ColorGrouping colorGrouping)
|
||||
|
||||
void TraceScroller::currentTraceTimeChanged()
|
||||
{
|
||||
bool drawDependencies = drawingProperties.drawDependenciesOption.draw != DependencyOption::Disabled;
|
||||
|
||||
Timespan spanOnTracePlot = tracePlot->GetCurrentTimespan();
|
||||
canvasClip->setInterval(spanOnTracePlot.Begin(), spanOnTracePlot.End());
|
||||
Timespan span = GetCurrentTimespan();
|
||||
transactions = navigator->TraceFile().getTransactionsInTimespan(span);
|
||||
transactions = navigator->TraceFile().getTransactionsInTimespan(span, drawDependencies);
|
||||
|
||||
if (drawingProperties.drawDependenciesOption.draw != DependencyOption::Disabled) {
|
||||
if (drawDependencies) {
|
||||
navigator->TraceFile().updateDependenciesInTimespan(span);
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user