CQtDeployer/Deploy/dependencymap.h

55 lines
1.5 KiB
C
Raw Normal View History

2019-12-08 13:57:20 +03:00
//#
//# Copyright (C) 2018-2020 QuasarApp.
//# Distributed under the lgplv3 software license, see the accompanying
//# Everyone is permitted to copy and distribute verbatim copies
//# of this license document, but changing it is not allowed.
//#
#ifndef DEPENDENCIESMAP_H
#define DEPENDENCIESMAP_H
#include "deploy_global.h"
#include "deploycore.h"
#include <QSet>
/**
* @brief The DependenciesMap class
* this class contains all dependencies information about target
*/
class DEPLOYSHARED_EXPORT DependencyMap
{
public:
DependencyMap();
DependencyMap& operator +=(const DependencyMap& other);
DependencyMap& operator -=(const DependencyMap& other);
DeployCore::QtModule qtModules() const;
const QSet<QString>& neadedLibs() const;
const QSet<QString>& systemLibs() const;
void addModule(DeployCore::QtModule module);
void addSystemLib(const QString& lib);
void addNeadedLib(const QString& lib);
void removeModule(DeployCore::QtModule module);
void removeSystemLib(const QString& lib);
void removeNeadedLib(const QString& lib);
bool containsSysLib(const QString& lib) const;
bool containsModule(DeployCore::QtModule module) const;
bool containsNeadedLib(const QString& lib) const;
2019-12-13 23:05:07 +03:00
QSet<QString> targets() const;
void setTargets(const QSet<QString> &targets);
2019-12-08 13:57:20 +03:00
private:
DeployCore::QtModule _qtModules = DeployCore::NONE;
QSet<QString> _neadedLibs;
QSet<QString> _systemLibs;
2019-12-13 23:05:07 +03:00
QSet<QString> _targets;
2019-12-08 13:57:20 +03:00
};
#endif // DEPENDENCIESMAP_H