summaryrefslogtreecommitdiff
path: root/indra/newview/llappviewer.h
AgeCommit message (Collapse)Author
2013-08-02CHOP-959: Honor --graphicslevel switch even on first viewer run.Nat Goodspeed
Previous CHOP-959 logic set a flag to remember that settings variable RenderQualityPerformance was set (by --graphicslevel), so it could be applied once LLViewerWindow is constructed. But on first viewer run, LLViewerWindow constructor calls LLFeatureManager::applyRecommendedSettings(), which resets that settings variable! So don't just set a flag, actually capture the requested RenderQualityPerformance value for later.
2013-06-03Fix and organize code for managing marker files that detect last_exec_event ↵Oz Linden
and last_exec_duration
2013-04-19merge up to latest viewer-development for merge to 3.5.2Oz Linden
2013-04-19merge changes for DRTVWR-294Oz Linden
2013-04-16merge up to 3.5.2 developmentOz Linden
2013-04-02Add reporting of last_exec_durationOz Linden
(and clean up logic around multiple instances)
2013-03-29Update Mac and Windows breakpad builds to latestGraham Madarasz
2013-03-11mergeprep
2013-03-11mergeprep
2013-03-11Viewer-chui mergeprep
2013-02-15SH-3867 FIX - on logout, wait for any pending metrics uploads to completeBrad Payne (Vir Linden)
2013-01-24merging in viewer-beta.Nyx Linden
Most of the merge was clean, a couple conflicts. Brought over a couple patches manually for llpolymesh.
2012-12-04Pull and merge viewer-developmentsimon@Simon-PC.lindenlab.com
2012-11-28SH-3563. Pull and merge from viewer-development. Modest code changes to fix ↵prep
alignment issue in llAppearance.
2012-10-31storm-1850: ensure that last exec event reports apply only to the same versionOz Linden
2013-03-27add platform and platform version to login request parameters for new ↵Oz Linden
version manager query
2012-11-13Automated merge with http://hg.secondlife.com/viewer-developmentNat Goodspeed
2012-10-16Introduce LLAppViewer::initStrings(); reload default_trans_args.Nat Goodspeed
Calling LLTrans::setDefaultArg() after LLTransUtil::parseStrings() is almost good enough -- but it fails to address the case in which one or more of the default_trans_args strings (e.g. "create_account_url") embeds a reference to the new substitution. So after the setDefaultArg() call, go back through default_trans_args, refetching each string to perform the substitution and updating it with a setDefaultArg() call of its own. All this is way too much logic to replicate in both LLAppViewer::initConfiguration() and init(), so break out new LLAppViewer::initStrings() method and call it from both places.
2012-08-24Automated merge with http://bitbucket.org/lindenlab/viewer-catRichard Linden
2012-08-06llfasttimer cleanupRichard Linden
removed unnecessary cache miss from fast timers renamed llfasttimer_class back to llfasttimer
2012-08-03Merge of viewer-development (3.4.1).Monty Brandenberg
2012-07-19SH-3280 Better init/shutdown functionality for llcorehttp by llappviewerMonty Brandenberg
Isolate llcorehttp initialization into a utility class (LLAppCoreHttp) that provides glue between app and library (sets up policies, handles notifications). Introduce 'TextureFetchConcurrency' debug setting to provide some field control when absolutely necessary.
2012-07-11Added LLPipeline eventhost API. Added ForcePeriodicRenderingTime setting.Don Kjer
2012-07-10Added new settings: DisableAllRenderTypes, DisableAllRenderFeatures, and MaxFPS.Don Kjer
2012-06-04merge changes for DRTVWR-157Oz Linden
2012-04-10STORM-1842 Don't save per-account settings if login not fully successfulZi Ree
Repo created from Firestorm patch by Jonathan Yap
2012-03-14Add --leap command-line switch to launch one or more LEAP plugins.Nat Goodspeed
You can specify one or more instances of --leap 'command line'. Each such command line is parsed using bash-like conventions, notably honoring double quotes, e.g. --leap '"c:/Program Files/Something/something.exe" arg1 arg2'. (Specifying such an argument in a Windows Command Prompt may be tricky.) Such a program should read its stdin and write to its stdout using LLSD Event API Plugin protocol: length:serialized_LLSD where 'length' is the decimal integer count of bytes in serialized_LLSD, ':' is a literal colon character, and 'serialized_LLSD' is notation-format LLSD. A typical LLSD object is a map containing 'pump' and 'data' keys, where 'pump' is the name of the LLEventPump on which to send 'data' (or on which 'data' was received). In particular, the initial LLSD object on stdin mentions the name of this plugin's reply LLEventPump: the LLEventPump that will send every subsequent received event to the plugin's stdin. Anything written to the plugin's stderr will be logged in the viewer log. In addition to being generally useful, this helps debug problems with particular plugins.
2011-10-14Merge backout of b782a75c99e6Dave Parks
2011-10-14Backed out changeset b782a75c99e6Dave Parks
2011-08-31MergeXiaohong Bao
2011-08-19STORM-1543 WIP Fixed auto-moving offered inventory items to trash.Vadim ProductEngine
It turned out impossible to properly remove an inventory item from within LLDiscardAgentOffer::done(), because that would lead to nested LLInventoryModel::notifyObservers() calls. Fixed that by deferring removal until the next LLAppViewer::idle() iteration. Also elimiteed duplicated code.
2011-07-15Merge from viewer-developmentXiaohong Bao
2011-03-30SOCIAL-853 FIX As a new user, I would like Second Life to start up with a ↵Linden Staff@LINDEN-E5E9EA17.lindenlab.com
maximized window to fully immerse myself in the experience * Added virtual meetsRequirementsForMaximizedStart() function to determine whether or not to start the initial experience in a maximized window Reviewed by Richard
2011-02-23MergeXiaohong Bao
2011-02-23Merge from viewer-developmentXiaohong Bao
2011-02-22SOCIAL-545 WIP Figure out how to configure skylight-specific settings while ↵Richard Linden
retaining relevant user settings (login account name, etc.) converted settings_file.xml to use param block descriptions for easier modification added session settings file and user session settings file for per-session config overrides
2011-02-05Introduces a LLThreadLocalData class that can beAleric Inglewood
accessed through the static LLThread::tldata(). Currently this object contains two (public) thread-local objects: a LLAPRRootPool and a LLVolatileAPRPool. The first is the general memory pool used by this thread (and this thread alone), while the second is intended for short lived memory allocations (needed for APR). The advantages of not mixing those two is that the latter is used most frequently, and as a result of it's nature can be destroyed and reconstructed on a "regular" basis. This patch adds LLAPRPool (completely replacing the old one), which is a wrapper around apr_pool_t* and has complete thread-safity checking. Whenever an apr call requires memory for some resource, a memory pool in the form of an LLAPRPool object can be created with the same life-time as this resource; assuring clean up of the memory no sooner, but also not much later than the life-time of the resource that needs the memory. Many, many function calls and constructors had the pool parameter simply removed (it is no longer the concern of the developer, if you don't write code that actually does an libapr call then you are no longer bothered with memory pools at all). However, I kept the notion of short-lived and long-lived allocations alive (see my remark in the jira here: https://jira.secondlife.com/browse/STORM-864?focusedCommentId=235356&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-235356 which requires that the LLAPRFile API needs to allow the user to specify how long they think a file will stay open. By choosing 'short_lived' as default for the constructor that immediately opens a file, the number of instances where this needs to be specified is drastically reduced however (obviously, any automatic LLAPRFile is short lived). *** Addressed Boroondas remarks in https://codereview.secondlife.com/r/99/ regarding (doxygen) comments. This patch effectively only changes comments. Includes some 'merge' stuff that ended up in llvocache.cpp (while starting as a bug fix, now only resulting in a cleanup). *** Added comment 'The use of apr_pool_t is OK here'. Added this comment on every line where apr_pool_t is correctly being used. This should make it easier to spot (future) errors where someone started to use apr_pool_t; you can just grep all sources for 'apr_pool_t' and immediately see where it's being used while LLAPRPool should have been used. Note that merging this patch is very easy: If there are no other uses of apr_pool_t in the code (one grep) and it compiles, then it will work. *** Second Merge (needed to remove 'delete mCreationMutex' from LLImageDecodeThread::~LLImageDecodeThread). *** Added back #include <apr_pools.h>. Apparently that is needed on libapr version 1.2.8., the version used by Linden Lab, for calls to apr_queue_*. This is a bug in libapr (we also include <apr_queue.h>, that is fixed in (at least) 1.3.7. Note that 1.2.8 is VERY old. Even 1.3.x is old. *** License fixes (GPL -> LGPL). And typo in comments. Addresses merov's comments on the review board. *** Added Merov's compile fixes for windows.
2010-12-17Merge from viewer-development post 2.4 releaseMonty Brandenberg
2010-12-09merge from http://hg.secondlife.com/viewer-developmentMonty Brandenberg
2010-12-03first iteration of memory pool codeXiaohong Bao
2010-12-02mergeMonroe Linden
2010-11-29ESC-154 ESC-156 Now using region hash rather than region uuid as identifier.Monty Brandenberg
In the viewer, the region's UUID is acquired very late and isn't generally used as the canonical region identifier. The U64 region hash is a better and more consistently used identifier so I'm moving over to using that as the region key. Don't have a proper reserved invalid region hash which is unfortunate, but then, so much is.
2010-11-24ESC-154 ESC-156 Metrics integration across threadsMonty Brandenberg
Using unpause() method in derived class rather than wake() in furthest base class solved the stalling problem. I still think too many levels of the LLTextureFetch hierarchy are keeping thread state, however. The LLViewerRegion instance an agent enters doesn't necessarily have its region_id yet, that only comes after the handshake, if any. So add a few more metrics insertion points to propagate region into metrics. Finally, try to launch a final metrics report when a quit is initiated.
2010-11-18Merge with viewer-developmentMark Palange (Mani)
2010-11-18ESC-154 ESC-155 ESC-156Monty Brandenberg
Asset fetch requests wrapped to allow for measurements. Asset fetch enqueues, dequeues and completion times recorded to asset stats collector. Texture fetch operations (http and udp) recorded to asset stats collector. Stats collector time vallue switched from F32 to U64 which is the more common type in the viewer. Cross-thread mechanism introduced to communicate region changes and generate global statistics messages. Facility to deliver metrics via Capabilities sketched in but needs additional work. Documentation and diagrams added.
2010-11-15mergeRichard Linden
2010-11-05STORM-105 : Take Vadim code review into account, code clean upMerov Linden
2010-11-05Merge latest lindenlab/viewer-development with mani_linden/viewer-development.brad kittenbrink
2010-11-04merge with viewer-developmentMerov Linden
2010-10-27STORM-105 : improve decompression perf gathering, allow perf name to be ↵Merov Linden
passed on the command line, fix crash in analysis phase