summaryrefslogtreecommitdiff
path: root/indra/newview/llappviewer.h
AgeCommit message (Collapse)Author
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
2010-10-27CHOP-122 Initializing Facade service in the viewer. Rev. by Brad.Mark Palange (Mani)
2010-10-21Automated merge up from viewer-developmentLoren Shih
2010-10-14for SH-335: create a debug tool to track of memory availability.Xiaohong Bao
2010-10-13improved fastquit logic which should reliably disconnect viewer from simRichard Linden
2010-10-11fix for linux buildRichard Nelson
2010-10-08added "FastQuit" option for forceful termination, default is offRichard Linden
2010-10-07EXP-167: Quit On Login Page Activated - viewer code /default settingcallum
2010-09-27MergeLeyla Farazha
2010-09-16mergeRichard Linden
2010-09-16MergeLeyla Farazha
2010-09-03Post-convert merge by convert_monolith.py from ↵Aimee Linden
/Users/Aimee/Documents/Work/Linden-Lab/Development/viewer/convert/viewer-identity-evolution
2010-09-01code for DEV-52939: viewer's object geometry cache files are not limited in ↵Xiaohong Bao
number, and can also be incorrectly cleared with the VFS cache. reviewed by andrew.
2010-08-27Post-convert merge by convert_monolith.py from ./viewer-experienceMonroe Linden
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-08-12added remaining hints and fade in/fade out behaviorRichard Linden
2010-06-21Merge with q/viewer-releaseLeyla Farazha
2010-05-27Removed the SyncErrorHandler from llapp and llappviewer*.Lynx Linden
This was only used for the Linux client to dump a stack trace to stack_trace.log, which is no longer needed now that we are using Google Breakpad. I also removed all of the stack printing code from llappviewerlinux.cpp.
2010-05-13merge pull from dessie/viewer-public, picking up SLE codeJames Cook
2010-05-11merge from dessie/viewer-public right before SLE code landedJames Cook
2010-04-19DEV-47529 Viewer refresh name lookup cap URL on region cross/teleportJames Cook
Reviewed with Kelly
2010-04-07Automated mergeRoxie Linden
2010-04-07Re-insert backed out SLE checkin so we can fix itRoxie Linden
2010-04-07Automated merge with ssh://hg.lindenlab.com/q/viewer-trunkXiaohong Bao
2010-04-07fix for all wierd crashes happening to lltexturecache.cpp, cuased by running ↵Xiaohong Bao
viewer 2.0 and viewer 1.23 at the same time. Specifically for the following jiras: EXT-6692: crash at LLTextureCache::readEntryFromHeaderImmediately [secondlife-bin lltexturecache.cpp:1145] EXT-6691: crash at LLTextureCache::writeEntryToHeaderImmediately [secondlife-bin lltexturecache.cpp:1126] possible fix for EXT-6567: crash at LLImageBase::allocateData [secondlife-bin llimage.cpp:170]
2010-04-07Backed out changeset 63b699f90efdTofu Linden
2010-02-06Update the rest of the LLEventTimer users to #include lleventtimer.h. I think.Tofu Linden
2010-01-27Plumb getting and setting the system audio mute through appviewerRick Pasetto
Next step is to actually implement the OS-specific calls to do so. Until then, behavior is the same; the status bar will mute/unmute the "master" audio for the viewer *only*
2010-02-26automated mergeRoxie Linden
2010-02-25automated merge from trunkRoxie Linden
2009-11-13Refactoring of llviewerprecompiledheaders.h to hopefully increase stabilitybrad kittenbrink
and reduce unnecessary dependencies and incredibuild wedging. Hopefully in the long run this will reduce build time. Also cleaned up a lot of header file usage to conform better to the coding standard. reviewed by james and steve.
2009-11-06merge from texture-pipelineSteve Bennetts
2009-11-06merge QAR-1829: texture pipeline branch in viewer-2.0.0.3Xiaohong Bao
2009-11-02Fix unclear function names around Pacific versus "SLT" time in string ↵James Cook
operations. Reviewed with Brad.
2009-10-27EXT-760 Move Tap tap hold to run to Preferences > Advanced , and make the ↵angela
default to false