From 98888a36a33d4f84e6119f331eb41082745d94fb Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Thu, 27 Aug 2015 21:33:37 -0700 Subject: [PATCH] use const ref where appropriate for asset classes --- libraries/networking/src/AssetClient.cpp | 11 ++++++----- libraries/networking/src/AssetClient.h | 14 +++++++------- libraries/networking/src/AssetRequest.cpp | 5 +++-- libraries/networking/src/AssetRequest.h | 2 +- libraries/networking/src/AssetUpload.cpp | 2 +- 5 files changed, 18 insertions(+), 16 deletions(-) diff --git a/libraries/networking/src/AssetClient.cpp b/libraries/networking/src/AssetClient.cpp index 5333285db6..ea1c99f228 100644 --- a/libraries/networking/src/AssetClient.cpp +++ b/libraries/networking/src/AssetClient.cpp @@ -30,7 +30,7 @@ AssetClient::AssetClient() { packetReceiver.registerListener(PacketType::AssetUploadReply, this, "handleAssetUploadReply"); } -AssetRequest* AssetClient::createRequest(QString hash, QString extension) { +AssetRequest* AssetClient::createRequest(const QString& hash, const QString& extension) { if (QThread::currentThread() != thread()) { AssetRequest* req; QMetaObject::invokeMethod(this, "createRequest", @@ -56,7 +56,7 @@ AssetRequest* AssetClient::createRequest(QString hash, QString extension) { return nullptr; } -AssetUpload* AssetClient::createUpload(QString filename) { +AssetUpload* AssetClient::createUpload(const QString& filename) { if (QThread::currentThread() != thread()) { AssetUpload* upload; QMetaObject::invokeMethod(this, "createUpload", @@ -76,7 +76,8 @@ AssetUpload* AssetClient::createUpload(QString filename) { return nullptr; } -bool AssetClient::getAsset(QString hash, QString extension, DataOffset start, DataOffset end, ReceivedAssetCallback callback) { +bool AssetClient::getAsset(const QString& hash, const QString& extension, DataOffset start, DataOffset end, + ReceivedAssetCallback callback) { if (hash.length() != SHA256_HASH_HEX_LENGTH) { qDebug() << "Invalid hash size"; return false; @@ -112,7 +113,7 @@ bool AssetClient::getAsset(QString hash, QString extension, DataOffset start, Da return false; } -bool AssetClient::getAssetInfo(QString hash, QString extension, GetInfoCallback callback) { +bool AssetClient::getAssetInfo(const QString& hash, const QString& extension, GetInfoCallback callback) { auto nodeList = DependencyManager::get(); SharedNodePointer assetServer = nodeList->soloNodeOfType(NodeType::AssetServer); @@ -184,7 +185,7 @@ void AssetClient::handleAssetGetReply(QSharedPointer packetList, S } } -bool AssetClient::uploadAsset(QByteArray data, QString extension, UploadResultCallback callback) { +bool AssetClient::uploadAsset(const QByteArray& data, const QString& extension, UploadResultCallback callback) { auto nodeList = DependencyManager::get(); SharedNodePointer assetServer = nodeList->soloNodeOfType(NodeType::AssetServer); diff --git a/libraries/networking/src/AssetClient.h b/libraries/networking/src/AssetClient.h index 79e2e60458..e44737df21 100644 --- a/libraries/networking/src/AssetClient.h +++ b/libraries/networking/src/AssetClient.h @@ -29,17 +29,17 @@ struct AssetInfo { int64_t size; }; -using ReceivedAssetCallback = std::function; +using ReceivedAssetCallback = std::function; using GetInfoCallback = std::function; -using UploadResultCallback = std::function; +using UploadResultCallback = std::function; class AssetClient : public QObject, public Dependency { Q_OBJECT public: AssetClient(); - Q_INVOKABLE AssetRequest* createRequest(QString hash, QString extension); - Q_INVOKABLE AssetUpload* createUpload(QString filename); + Q_INVOKABLE AssetRequest* createRequest(const QString& hash, const QString& extension); + Q_INVOKABLE AssetUpload* createUpload(const QString& filename); private slots: void handleAssetGetInfoReply(QSharedPointer packet, SharedNodePointer senderNode); @@ -47,9 +47,9 @@ private slots: void handleAssetUploadReply(QSharedPointer packet, SharedNodePointer senderNode); private: - bool getAssetInfo(QString hash, QString extension, GetInfoCallback callback); - bool getAsset(QString hash, QString extension, DataOffset start, DataOffset end, ReceivedAssetCallback callback); - bool uploadAsset(QByteArray data, QString extension, UploadResultCallback callback); + bool getAssetInfo(const QString& hash, const QString& extension, GetInfoCallback callback); + bool getAsset(const QString& hash, const QString& extension, DataOffset start, DataOffset end, ReceivedAssetCallback callback); + bool uploadAsset(const QByteArray& data, const QString& extension, UploadResultCallback callback); static MessageID _currentID; QHash _pendingRequests; diff --git a/libraries/networking/src/AssetRequest.cpp b/libraries/networking/src/AssetRequest.cpp index be5933e188..771b256287 100644 --- a/libraries/networking/src/AssetRequest.cpp +++ b/libraries/networking/src/AssetRequest.cpp @@ -19,11 +19,12 @@ #include "NodeList.h" -AssetRequest::AssetRequest(QObject* parent, QString hash, QString extension) : +AssetRequest::AssetRequest(QObject* parent, const QString& hash, const QString& extension) : QObject(parent), _hash(hash), _extension(extension) { + } void AssetRequest::start() { @@ -51,7 +52,7 @@ void AssetRequest::start() { auto start = i * CHUNK_SIZE; auto end = std::min((i + 1) * CHUNK_SIZE, info.size); - assetClient->getAsset(_hash, _extension, start, end, [this, start, end](bool success, QByteArray data) { + assetClient->getAsset(_hash, _extension, start, end, [this, start, end](bool success, const QByteArray& data) { Q_ASSERT(data.size() == (end - start)); if (success) { diff --git a/libraries/networking/src/AssetRequest.h b/libraries/networking/src/AssetRequest.h index 6e0738c333..c369db6a2b 100644 --- a/libraries/networking/src/AssetRequest.h +++ b/libraries/networking/src/AssetRequest.h @@ -37,7 +37,7 @@ public: Error, }; - AssetRequest(QObject* parent, QString hash, QString extension); + AssetRequest(QObject* parent, const QString& hash, const QString& extension); Q_INVOKABLE void start(); diff --git a/libraries/networking/src/AssetUpload.cpp b/libraries/networking/src/AssetUpload.cpp index 780d062084..7f69f83e97 100644 --- a/libraries/networking/src/AssetUpload.cpp +++ b/libraries/networking/src/AssetUpload.cpp @@ -41,7 +41,7 @@ void AssetUpload::start() { // ask the AssetClient to upload the asset and emit the proper signals from the passed callback auto assetClient = DependencyManager::get(); - assetClient->uploadAsset(data, _extension, [this](bool success, QString hash){ + assetClient->uploadAsset(data, _extension, [this](bool success, const QString& hash){ if (success) { // successful upload - emit finished with a point to ourselves and the resulting hash _result = Success;