summaryrefslogtreecommitdiff
path: root/indra/newview/llappviewer.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llappviewer.h')
-rw-r--r--indra/newview/llappviewer.h44
1 files changed, 32 insertions, 12 deletions
diff --git a/indra/newview/llappviewer.h b/indra/newview/llappviewer.h
index a3b84759f5..646b677264 100644
--- a/indra/newview/llappviewer.h
+++ b/indra/newview/llappviewer.h
@@ -33,11 +33,20 @@
#ifndef LL_LLAPPVIEWER_H
#define LL_LLAPPVIEWER_H
+#include "llallocator.h"
+#include "llcontrol.h"
+#include "llsys.h" // for LLOSInfo
+
+class LLCommandLineParser;
+class LLFrameTimer;
+class LLPumpIO;
class LLTextureCache;
-class LLWorkerThread;
class LLTextureFetch;
+class LLTimer;
+class LLVFS;
class LLWatchdogTimeout;
-class LLCommandLineParser;
+class LLWorkerThread;
+
class LLAppViewer : public LLApp
{
@@ -96,8 +105,8 @@ public:
bool getPurgeCache() const { return mPurgeCache; }
- const std::string& getSecondLifeTitle() const; // The Second Life title.
- const std::string& getWindowTitle() const; // The window display name.
+ std::string getSecondLifeTitle() const; // The Second Life title.
+ std::string getWindowTitle() const; // The window display name.
void forceDisconnect(const std::string& msg); // Force disconnection, with a message to the user.
void badNetworkHandler(); // Cause a crash state due to bad network packet.
@@ -119,14 +128,13 @@ public:
virtual void forceErrorSoftwareException();
virtual void forceErrorDriverCrash();
- // *NOTE: There are currently 3 settings files:
- // "Global", "PerAccount" and "CrashSettings"
// The list is found in app_settings/settings_files.xml
// but since they are used explicitly in code,
// the follow consts should also do the trick.
static const std::string sGlobalSettingsName;
- static const std::string sPerAccountSettingsName;
- static const std::string sCrashSettingsName;
+
+ LLCachedControl<bool> mRandomizeFramerate;
+ LLCachedControl<bool> mPeriodicSlowFrame;
// Load settings from the location specified by loction_key.
// Key availale and rules for loading, are specified in
@@ -136,6 +144,7 @@ public:
std::string getSettingsFilename(const std::string& location_key,
const std::string& file);
+ void loadColorSettings();
// For thread debugging.
// llstartup needs to control init.
@@ -150,6 +159,15 @@ public:
// *NOTE:Mani Fix this for login abstraction!!
void handleLoginComplete();
+ LLAllocator & getAllocator() { return mAlloc; }
+
+ // On LoginCompleted callback
+ typedef boost::signals2::signal<void (void)> login_completed_signal_t;
+ login_completed_signal_t mOnLoginCompleted;
+ boost::signals2::connection setOnLoginCompletedCallback( const login_completed_signal_t::slot_type& cb ) { return mOnLoginCompleted.connect(cb); }
+
+ void purgeCache(); // Clear the local cache.
+
protected:
virtual bool initWindow(); // Initialize the viewer's window.
virtual bool initLogging(); // Initialize log files, logging system, return false on failure.
@@ -171,7 +189,7 @@ private:
void initGridChoice();
bool initCache(); // Initialize local client cache.
- void purgeCache(); // Clear the local cache.
+
// We have switched locations of both Mac and Windows cache, make sure
// files migrate and old cache is cleared out.
@@ -221,6 +239,8 @@ private:
bool mSavedFinalSnapshot;
+ bool mForceGraphicsDetail;
+
bool mQuitRequested; // User wants to quit, may have modified documents open.
bool mLogoutRequestSent; // Disconnect message sent to simulator, no longer safe to send messages to the sim.
S32 mYieldTime;
@@ -228,10 +248,13 @@ private:
LLWatchdogTimeout* mMainloopTimeout;
+ LLThread* mFastTimerLogThread;
// for tracking viewer<->region circuit death
bool mAgentRegionLastAlive;
LLUUID mAgentRegionLastID;
+ LLAllocator mAlloc;
+
public:
//some information for updater
typedef struct
@@ -297,9 +320,6 @@ extern LLTimer gLogoutTimer;
extern F32 gSimLastTime;
extern F32 gSimFrames;
-extern LLUUID gInventoryLibraryOwner;
-extern LLUUID gInventoryLibraryRoot;
-
extern BOOL gDisconnected;
// Map scale in pixels per region