72 lines
2.1 KiB
Text
72 lines
2.1 KiB
Text
|
Possible design of gpm2:
|
||
|
|
||
|
gpm2-starter:
|
||
|
- reads configuration
|
||
|
- starts daemons
|
||
|
* first gpm2-daemon
|
||
|
- connects daemons
|
||
|
* connects them through stdin and stdout?
|
||
|
- perhaps a job of gpm2-daemon?
|
||
|
* stderr is relayed to the log console
|
||
|
- which can log to syslog
|
||
|
|
||
|
gpm2-daemon:
|
||
|
- main daemon
|
||
|
- starts mice handlers
|
||
|
- listens for ipc
|
||
|
- relays input data abstracted to clients
|
||
|
- does *NOT* draw a cursor or something like that
|
||
|
- can be used by x.org (see below)
|
||
|
- opens mice devices?
|
||
|
- should be portable
|
||
|
|
||
|
gpm2-io:
|
||
|
- gets list of opened fds or of devices
|
||
|
- uses poll() / select() on mice devices
|
||
|
- retrieves data packets
|
||
|
- forwards raw data packets to gpm2-daemon from devices
|
||
|
- either
|
||
|
- forwards raw data packets from gpm2-daemon to devices??
|
||
|
- decodes mice packets: does protocol handling and
|
||
|
forwards decoded packages to gpm2_daemon
|
||
|
- has a mouse - fd_in - fd_out list
|
||
|
- has *NO* root priviliges
|
||
|
|
||
|
gpm2-decode:
|
||
|
- forwards raw data packets from gpm2-daemon
|
||
|
- forwards decoded packages to clients (like gpm2-cdisplay)
|
||
|
|
||
|
gpm2-raw-relay:
|
||
|
- reads data from gpm2-daemon
|
||
|
- writes raw data to clients
|
||
|
- a client needs to connect n times for n mice
|
||
|
|
||
|
gpm2-cdisplay:
|
||
|
- Console DISPLAYS: displays mouse cursor on console
|
||
|
- reads input from gpm2-daemon
|
||
|
- reads mouse information
|
||
|
- perhaps os-specific versions
|
||
|
|
||
|
gpm2-ccandp:
|
||
|
- Console Copy AND Paste daemon
|
||
|
- reads input from gpm2-daemon
|
||
|
- copies selected text into own buffer
|
||
|
- pastes buffer to console
|
||
|
- perhaps os-specific versions
|
||
|
|
||
|
gpm2-xorg:
|
||
|
- interface between gpm2 and x.org
|
||
|
- could make mouse support unecessary in x.org
|
||
|
- should be portable
|
||
|
|
||
|
gpm2-syslog:
|
||
|
- connects to the gpm2-daemon logging port
|
||
|
- reads messages
|
||
|
- relays them to syslog
|
||
|
|
||
|
gpm2-log: needed?
|
||
|
- logging interface for gpm2-daemon
|
||
|
- recieves messages
|
||
|
|
||
|
|