mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 13:02:45 +00:00 
			
		
		
		
	 0dc9af5f7e
			
		
	
	
		0dc9af5f7e
		
	
	
	
	
		
			
			Also run it across the whole tree to get everything using the One True Style. We don't yet run this in an automated fashion as it's a little slow, but there is a snippet to do so in makeall.sh.
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			813 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			813 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| #pragma once
 | |
| 
 | |
| #include <AK/ByteBuffer.h>
 | |
| #include <LibCore/CEventLoop.h>
 | |
| 
 | |
| class WSClientConnection;
 | |
| struct WSAPI_ClientMessage;
 | |
| 
 | |
| class WSEventLoop : public CEventLoop {
 | |
| public:
 | |
|     WSEventLoop();
 | |
|     virtual ~WSEventLoop() override;
 | |
| 
 | |
|     static WSEventLoop& the() { return static_cast<WSEventLoop&>(CEventLoop::current()); }
 | |
| 
 | |
| private:
 | |
|     virtual void add_file_descriptors_for_select(fd_set&, int& max_fd_added) override;
 | |
|     virtual void process_file_descriptors_after_select(const fd_set&) override;
 | |
| 
 | |
|     void drain_server();
 | |
|     void drain_mouse();
 | |
|     void drain_keyboard();
 | |
|     void drain_client(WSClientConnection&);
 | |
|     bool on_receive_from_client(int client_id, const WSAPI_ClientMessage&, ByteBuffer&& extra_data);
 | |
| 
 | |
|     int m_keyboard_fd { -1 };
 | |
|     int m_mouse_fd { -1 };
 | |
|     int m_server_fd { -1 };
 | |
| };
 |