| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 | /** * Copyright (c) 2021 Paul-Louis Ageneau * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */#ifndef RTC_WEBSOCKETSERVER_H#define RTC_WEBSOCKETSERVER_H#if RTC_ENABLE_WEBSOCKET#include "common.hpp"#include "configuration.hpp"#include "websocket.hpp"namespace rtc {namespace impl {struct WebSocketServer;}class RTC_CPP_EXPORT WebSocketServer final : private CheshireCat<impl::WebSocketServer> {public:	using Configuration = WebSocketServerConfiguration;	WebSocketServer();	WebSocketServer(Configuration config);	~WebSocketServer();	void stop();	uint16_t port() const;	void onClient(std::function<void(shared_ptr<WebSocket>)> callback);private:	using CheshireCat<impl::WebSocketServer>::impl;};} // namespace rtc#endif#endif // RTC_WEBSOCKET_H
 |