#pragma once #include #include class ABuffer; class ASBufferQueue; class ASMixer; class ASClientConnection final : public IPC::Server::Connection { C_OBJECT(ASClientConnection) public: explicit ASClientConnection(CLocalSocket&, int client_id, ASMixer& mixer); ~ASClientConnection() override; void send_greeting() override; bool handle_message(const ASAPI_ClientMessage&, const ByteBuffer&& = {}) override; void did_finish_playing_buffer(Badge, int buffer_id); private: ASMixer& m_mixer; RefPtr m_queue; };