#ifndef WEBRTCPUSH_RUN_H
#define WEBRTCPUSH_RUN_H

#include <glib.h>

gboolean webrtcpush_should_use_mpp(void);
gboolean webrtcpush_is_running(void);

void webrtcpush_notify_fatal_failure(const char *reason);

/* 在 thread_open_browser 中调用；内部 g_main_loop_run 阻塞直至退出 */
int webrtcpush_run_blocking(void);

void webrtcpush_request_stop(void);

/* MQTT refresh_cam：拆掉 GStreamer 管道并重连信令（等同浏览器 Ctrl+R） */
void webrtcpush_request_refresh(void);

/* 仅重置媒体管道，保留 WebSocket（手动 MQTT 2012 刷新用） */
void webrtcpush_request_soft_refresh(void);

/* 换驾驶员（MQTT token 变化且验证通过） */
void webrtcpush_notify_driver_switch(void);

#endif
