53 lines
1.1 KiB
C++
53 lines
1.1 KiB
C++
#ifndef REPOINDEX_PACKAGEFINDER_H
|
|
#define REPOINDEX_PACKAGEFINDER_H
|
|
|
|
#include "./package.h"
|
|
|
|
#include <QObject>
|
|
|
|
namespace RepoIndex {
|
|
|
|
class Manager;
|
|
|
|
class PackageFinder : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit PackageFinder(Manager &manager, const QList<Dependency> &dependencies, bool sourcesRequired = false, QObject *parent = nullptr);
|
|
|
|
void setSourcesRequired(bool sourcesRequired);
|
|
const QList<Package *> results() const;
|
|
bool areAllResultsAvailable() const;
|
|
Package *packageProviding(const Dependency &dependency);
|
|
|
|
signals:
|
|
void resultsAvailable();
|
|
|
|
private slots:
|
|
void addResults();
|
|
|
|
private:
|
|
//bool m_sourcesRequired;
|
|
int m_remainingReplies;
|
|
QList<Package *> m_results;
|
|
};
|
|
|
|
//void PackageFinder::setSourcesRequired(bool sourcesRequired)
|
|
//{
|
|
// return m_sourcesRequired;
|
|
//}
|
|
|
|
inline const QList<Package *> PackageFinder::results() const
|
|
{
|
|
return m_results;
|
|
}
|
|
|
|
inline bool PackageFinder::areAllResultsAvailable() const
|
|
{
|
|
return !m_remainingReplies;
|
|
}
|
|
|
|
} // namespace RepoIndex
|
|
|
|
#endif // REPOINDEX_PACKAGEFINDER_H
|