diff options
Diffstat (limited to 'indra/newview/llappviewer.h')
-rw-r--r-- | indra/newview/llappviewer.h | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/indra/newview/llappviewer.h b/indra/newview/llappviewer.h index 27e1d32a38..cf5f1ab1e3 100644 --- a/indra/newview/llappviewer.h +++ b/indra/newview/llappviewer.h @@ -43,6 +43,7 @@ #ifndef LL_LLAPPVIEWER_H #define LL_LLAPPVIEWER_H +#include "llapp.h" #include "llallocator.h" #include "llapr.h" #include "llcontrol.h" @@ -226,6 +227,15 @@ public: void updateNameLookupUrl(const LLViewerRegion* regionp); + // post given work to the "mainloop" work queue for handling on the main thread + void postToMainCoro(const LL::WorkQueue::Work& work); + + // Attempt a 'soft' quit with disconnect and saving of settings/cache. + // Intended to be thread safe. + // Good chance of viewer crashing either way, but better than alternatives. + // Note: mQuitRequested can be aborted by user. + void outOfMemorySoftQuit(); + protected: virtual bool initWindow(); // Initialize the viewer's window. virtual void initLoggingAndGetLastDuration(); // Initialize log files, logging system @@ -241,6 +251,8 @@ protected: virtual bool meetsRequirementsForMaximizedStart(); // Used on first login to decide to launch maximized + virtual void sendOutOfDiskSpaceNotification(); + private: bool doFrame(); @@ -311,6 +323,7 @@ private: boost::optional<U32> mForceGraphicsLevel; bool mQuitRequested; // User wants to quit, may have modified documents open. + bool mClosingFloaters; bool mLogoutRequestSent; // Disconnect message sent to simulator, no longer safe to send messages to the sim. U32 mLastAgentControlFlags; F32 mLastAgentForceUpdate; @@ -334,7 +347,7 @@ private: }; // consts from viewer.h -const S32 AGENT_UPDATES_PER_SECOND = 10; +const S32 AGENT_UPDATES_PER_SECOND = 125; // Value derived experimentally to avoid Input Delays with latest PBR-Capable Viewers when viewer FPS is highly volatile. const S32 AGENT_FORCE_UPDATES_PER_SECOND = 1; // Globals with external linkage. From viewer.h @@ -343,7 +356,7 @@ const S32 AGENT_FORCE_UPDATES_PER_SECOND = 1; // "// llstartup" indicates that llstartup is the only client for this global. extern LLSD gDebugInfo; -extern BOOL gShowObjectUpdates; +extern bool gShowObjectUpdates; typedef enum { @@ -384,10 +397,10 @@ extern S32 gPendingMetricsUploads; extern F32 gSimLastTime; extern F32 gSimFrames; -extern BOOL gDisconnected; +extern bool gDisconnected; extern LLFrameTimer gRestoreGLTimer; -extern BOOL gRestoreGL; +extern bool gRestoreGL; extern bool gUseWireframe; extern LLMemoryInfo gSysMemory; @@ -398,13 +411,13 @@ extern std::string gLastVersionChannel; extern LLVector3 gWindVec; extern LLVector3 gRelativeWindVec; extern U32 gPacketsIn; -extern BOOL gPrintMessagesThisFrame; +extern bool gPrintMessagesThisFrame; extern LLUUID gBlackSquareID; -extern BOOL gRandomizeFramerate; -extern BOOL gPeriodicSlowFrame; +extern bool gRandomizeFramerate; +extern bool gPeriodicSlowFrame; -extern BOOL gSimulateMemLeak; +extern bool gSimulateMemLeak; #endif // LL_LLAPPVIEWER_H |