Viewer Architecture
Sub-Systems
- Asset System
- Inventory
- Rendering
- AGP
- Drawables
- viewer object
- avatar
- octtree
- UI
- Media
- Sound
- IPC
- TCP/pipes & pumps
- llmessagesystem
- VFS
Threads
The viewer is a single process with a few threads:
- Main thread -- The input/output main program function.
- VFS Thread -- Thread responsible for reading/writing to the virtual file system.
- LFS Thread -- Thread responsible for some reading/writing to the local file system. Not sure if this is actually used anywhere.
Program Flow
- Initialize
- Loop
- Gathers input
- Pumps the TCP i/o
- Render the frame
- Shutdown