From: José Fonseca Date: Sat, 24 Mar 2012 07:44:43 +0000 (+0000) Subject: Avoid QImage object copies by using references. X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=8759ae0a429088d4d1e54b6c0c205e8058150245;p=apitrace Avoid QImage object copies by using references. --- diff --git a/gui/apicalldelegate.cpp b/gui/apicalldelegate.cpp index 221462e..c687175 100644 --- a/gui/apicalldelegate.cpp +++ b/gui/apicalldelegate.cpp @@ -37,7 +37,7 @@ void ApiCallDelegate::paint(QPainter *painter, // draw thumbnail of frame if(event->type() == ApiTraceEvent::Frame) { ApiTraceFrame *frame = static_cast(event); - QImage thumbnail = frame->thumbnail(); + const QImage & thumbnail = frame->thumbnail(); if (!thumbnail.isNull()) { painter->drawImage(option.rect.topLeft() + offset, thumbnail); offset += QPoint(option.rect.height() + 16, 0); diff --git a/gui/apitracecall.cpp b/gui/apitracecall.cpp index 4d91001..dfaaeef 100644 --- a/gui/apitracecall.cpp +++ b/gui/apitracecall.cpp @@ -1198,12 +1198,12 @@ unsigned ApiTraceFrame::lastCallIndex() const } } -void ApiTraceFrame::setThumbnail(QImage thumbnail) +void ApiTraceFrame::setThumbnail(const QImage & thumbnail) { m_thumbnail = thumbnail; } -QImage ApiTraceFrame::thumbnail() const +const QImage & ApiTraceFrame::thumbnail() const { return m_thumbnail; } diff --git a/gui/apitracecall.h b/gui/apitracecall.h index 8d0e6db..945ab0c 100644 --- a/gui/apitracecall.h +++ b/gui/apitracecall.h @@ -336,8 +336,8 @@ public: void setLastCallIndex(unsigned index); unsigned lastCallIndex() const; - void setThumbnail(QImage thumbnail); - QImage thumbnail() const; + void setThumbnail(const QImage & thumbnail); + const QImage & thumbnail() const; private: ApiTrace *m_parentTrace; diff --git a/gui/retracer.h b/gui/retracer.h index ab9e5f3..1a78841 100644 --- a/gui/retracer.h +++ b/gui/retracer.h @@ -100,7 +100,7 @@ public: signals: void finished(const QString &output); void foundState(ApiTraceState *state); - void foundThumbnails(const QList &humbnails); + void foundThumbnails(const QList &thumbnails); void error(const QString &msg); void retraceErrors(const QList &errors);