#ifndef ELAEVENTBUSPRIVATE_H #define ELAEVENTBUSPRIVATE_H #include #include #include "ElaDef.h" #include "ElaProperty.h" class ElaEvent; class ElaEventPrivate : public QObject { Q_OBJECT Q_D_CREATE(ElaEvent) Q_PROPERTY_CREATE_D(QString, EventName); Q_PROPERTY_CREATE_D(QString, FunctionName); Q_PROPERTY_CREATE_D(Qt::ConnectionType, ConnectionType); public: explicit ElaEventPrivate(QObject *parent = nullptr); ~ElaEventPrivate(); }; class ElaEventBus; class ElaEventBusPrivate : public QObject { Q_OBJECT Q_D_CREATE(ElaEventBus) public: explicit ElaEventBusPrivate(QObject *parent = nullptr); ~ElaEventBusPrivate(); ElaEventBusType::EventBusReturnType registerEvent(ElaEvent *event); void unRegisterEvent(ElaEvent *event); private: QMap> _eventMap; }; #endif // ELAEVENTBUSPRIVATE_H