LLViewerApp
Revision as of 13:43, 3 August 2007 by Steve Linden (talk | contribs) (New page: = Objectives = * Improve the stability and maintainability of the Second Life Viewer code by cleaning up the initialization and main loop code * Move the main loop to a separate thread so ...)
Objectives
- Improve the stability and maintainability of the Second Life Viewer code by cleaning up the initialization and main loop code
- Move the main loop to a separate thread so that infinite loops can be detected and debugged
Tasks
LLViewerApp
- Create a LLViewerApp class based on LLAppb
- Move class initialization and parameter parsing to LLViewerApp
- Move all error handling to LLViewerApp (errors set a flag and sleep, LLViewerApp generates the exception)
- Move all debug/info/warning/error text printing to LLViewerApp
- Print text to a buffer instead of stdio
- Send the buffer to stdio in LLViewerApp loop
LLViewerThread
- Create a LLViewerThread class based on LLThread
- Move the main loop into LLViewerThread
Eliminate viewer.cpp
- Create proper C++ abstractions for any remaining code in viewer.cpp
Watchdog
- Add a 'watchdog' to LLViewerApp to detect infinite loops and trigger a crash
- Ensure that the crash handler generates proper stack information for LLViewerThread