C++: pass ModelItemInfo around wrapped in a QSharedPointer.

Change-Id: I36162ea589ad01cf2ba79fc931732422fc1e6983
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
This commit is contained in:
Erik Verbruggen
2014-03-13 14:15:58 +01:00
parent f26d6a76a4
commit 20c4f523ab
15 changed files with 163 additions and 144 deletions

View File

@@ -49,9 +49,9 @@ class CppLocatorData : public QObject
public:
explicit CppLocatorData(CppModelManager *modelManager);
QList<ModelItemInfo> enums();
QList<ModelItemInfo> classes();
QList<ModelItemInfo> functions();
QList<ModelItemInfo::Ptr> enums();
QList<ModelItemInfo::Ptr> classes();
QList<ModelItemInfo::Ptr> functions();
private slots:
void onDocumentUpdated(const CPlusPlus::Document::Ptr &document);
@@ -59,8 +59,8 @@ private slots:
private:
void flushPendingDocument(bool force);
QList<ModelItemInfo> allModelItemInfos(const QHash<QString,
QList<ModelItemInfo> > &items) const;
QList<ModelItemInfo::Ptr> allModelItemInfos(
const QHash<QString, QList<ModelItemInfo::Ptr>> &items) const;
QString findOrInsertFilePath(const QString &path)
{ return m_strings.insert(path); }
@@ -71,9 +71,9 @@ private:
StringTable &m_strings; // Used to avoid QString duplication
SearchSymbols m_search;
QHash<QString, QList<ModelItemInfo> > m_allEnums;
QHash<QString, QList<ModelItemInfo> > m_allClasses;
QHash<QString, QList<ModelItemInfo> > m_allFunctions;
QHash<QString, QList<ModelItemInfo::Ptr> > m_allEnums;
QHash<QString, QList<ModelItemInfo::Ptr> > m_allClasses;
QHash<QString, QList<ModelItemInfo::Ptr> > m_allFunctions;
mutable QMutex m_pendingDocumentsMutex;
QVector<CPlusPlus::Document::Ptr> m_pendingDocuments;