#ifndef UFT3CONFIGREADER_H #define UFT3CONFIGREADER_H #include #include #include #include class UFT3ConfigReader : public QObject { Q_OBJECT public: explicit UFT3ConfigReader(QObject *parent = nullptr); bool loadAllUFT3Config(); bool reloadUFT3Config(); bool isUFT3Loaded() const; QStringList getFailedFiles() const; bool checkFunctionExists(const QString& funcName); static bool checkFuncExistsStatic(const QString& funcName); static void clearCnameCache(); static QSet getAllCnamesStatic(); private: static bool loadCnameCache(); QString getBinPath(); QStringList m_failedFiles; bool m_loaded; static QSet m_cnameCache; static bool m_cnameCacheLoaded; }; #endif