#ifndef COREOBJECT_H #define COREOBJECT_H #include #include #include #include #include "HCEHomeCMS.h" #include "HCEHomeAlarm.h" #include "HCEHomeStream.h" #include #include #include #include #include #include #include #include #include #include "../include/YT_EHOME_shm.h" #include #include #include #include #include //#include #include #include "ttsthreads.h" #include "wechartthreads.h" #include "logthread.h" class AlarmEvent { public: explicit AlarmEvent(QString id, QString etime, int sta, uint t){ Device_Code = id; Event_Time = etime; Event_Status = sta; t_stamp = t; } QString Device_Code; QString Event_Time; int Event_Status; uint t_stamp; }; class Alarm_Report { public: explicit Alarm_Report(QString addr, QString time, QString type, QString sql){ Device_Code = addr; Event_Time = time; Event_Name = type; Sql = sql; } QString Device_Code; QString Event_Time; QString Event_Name; QString Sql; }; class Company_Phone { public: explicit Company_Phone(QString companycode, QString phone){ CompanyCode=companycode; Phone=phone; } QString CompanyCode; QString Phone; }; class CoreObject : public QObject { Q_OBJECT public: explicit CoreObject(QObject *parent = 0); ~CoreObject(); void start(); bool shm_load(); void shm_init(); void AlarmReport(QString addr, QString type, QString time, QString companyCode, quint64 insertid); void chkPhoneList(); void appendLog(QString log); QString getCompanyCode(QString addr); bool checkAlarmDevTime(QString deviceid); QStringList sqlList; QList alarmList; QList reportList; QList companyphoneList; signals: public slots: void time_out(); void process_stop(); void chartlog(quint16 idx, QDateTime t, QString data, bool dirflag); private: QTimer *timer; bool isWorking; QList processList; QSqlDatabase db; ttsThreads *wssThread[8]; ttsThreads *spThread[8]; WechartThreads *wxThreads[8]; LogThread *logThread; int repcur,wxcur; int synchour; uint alarmTime[DEVICES_COUNT]; long alarmListenHandle; }; #endif // COREOBJECT_H