#ifndef CONNECTIONMANAGER_H #define CONNECTIONMANAGER_H #include #include #include "baseConnection.h" #include class ConnectionManager:public QObject { Q_OBJECT public: static ConnectionManager& getInstance() { static ConnectionManager instance; return instance; } void insert(std::shared_ptr conn); void remove(int idx); void remove(std::shared_ptr conn); int getConnectionCounts(); std::shared_ptr getConnection(int idx); std::shared_ptr getConnection(const QString &connectionName); signals: void connectionAddedSignal(std::shared_ptr connPtr); void connectionRemovedSignal(std::shared_ptr connPtr); void connectionChangeSignal(std::shared_ptr connPtr); private: ConnectionManager(QObject *parent = nullptr); ~ConnectionManager(); QVector> connectionVec; }; #endif // CONNECTIONMANAGER_H