// 文件名: src/web/web_server.h #ifndef WEB_SERVER_H #define WEB_SERVER_H #include "crow.h" #include "crow/middlewares/cors.h" #include "systemMonitor/system_monitor.h" #include "deviceManager/device_manager.h" #include "dataCache/live_data_cache.h" #include "alarm/alarm_service.h" #include class WebServer : public crow::Crow { public: WebServer(SystemMonitor::SystemMonitor& monitor, DeviceManager& deviceManager, LiveDataCache& liveDataCache, AlarmService& alarm_service, uint16_t port = 8080 ); ~WebServer(); WebServer(const WebServer&) = delete; WebServer& operator=(const WebServer&) = delete; void start(); void stop(); private: void setup_routes(); SystemMonitor::SystemMonitor& m_monitor; DeviceManager& m_device_manager; LiveDataCache& m_live_data_cache; AlarmService& m_alarm_service; uint16_t m_port; std::thread m_thread; }; #endif // WEB_SERVER_H