Commit Graph

87 Commits (c5e3ace94de01ed61ed43284ea72dacec197cdc9)

Author SHA1 Message Date
Dave Parks 18b0aa0371 SL-17619 Add support for embedded textures to GLTF importer 2022-06-16 16:16:53 -05:00
Dave Parks f47730b92c SL-16418 Media texture update stall fix. Make media texture updates use LLImageGL thread to update, fix AMD sync issue on ImageGL thread and install debug callbacks on LLImageGL thread when debug gl enabled. 2022-02-14 18:07:24 +00:00
Dave Parks 8d20480c5f SL-16148 SL-16244 SL-16270 SL-16253 Remove most BlockTimers, remove LLMemTracked, introduce alignas, hook most/all reamining allocs, disable synchronous occlusion, and convert frequently accessed LLSingletons to LLSimpleton 2021-10-28 18:06:21 +00:00
Andrey Kleshchev 372ed555ed SL-13348 Thread crashing singleton #2
Reverted LLImage to singleton conversion
2020-05-29 21:53:43 +03:00
Nat Goodspeed 98be6e141c DRTVWR-493: Streamline LLParamSingleton, LLLockedSingleton.
Simplify LLSingleton::SingletonLifetimeManager to SingletonInitializer: that
struct has not been responsible for deletion ever since LLSingletonBase
acquired dependency-ordered deleteAll().

Move SingletonData::mInitState changes from SingletonLifetimeManager to
constructSingleton() method. Similarly, constructSingleton() now sets
SingletonData::mInstance instead of making its caller store the pointer.

Add variadic arguments to LLSingleton::constructSingleton() so we can reuse it
for LLParamSingleton.

Add finishInitializing() method to encapsulate logic reused for
getInstance()'s INITIALIZING and DELETED cases.

Make LLParamSingleton a subclass of LLSingleton, just as LLLockedSingleton is
a subclass of LLParamSingleton. Make LLParamSingleton a friend of LLSingleton,
so it can access private members of LLSingleton without also granting access
to any DERIVED_CLASS subclass. This eliminates the need for protected
getInitState().

LLParamSingleton::initParamSingleton() reuses LLSingleton::constructSingleton()
and finishInitializing(). Its getInstance() method completely replaces
LLSingleton::getInstance(): in most EInitStates, LLParamSingleton::getInstance()
is an error.

Use a std::mutex to serialize calls to LLParamSingleton::initParamSingleton()
and getInstance(). While LLSingleton::getInstance() relies on the "initialized
exactly once" guarantee for block-scope static declarations, LLParamSingleton
cannot rely on the same mechanism.

LLLockedSingleton is now a very succinct subclass of LLParamSingleton -- they
have very similar functionality.

Giving the LLSINGLETON() macro variadic arguments eliminates the need for a
separate LLPARAMSINGLETON() macro, while continuing to support existing usage.
2019-08-12 09:44:56 -04:00
andreykproductengine 17fae30f72 DRTVWR-493 LLImage to LLParamSingleton 2019-07-25 15:17:11 +03:00
Andrey Kleshchev 6e445e82e2 MAINT-8091 Removed deprecated and unused private memory pooling 2018-01-30 14:03:26 +00:00
ruslantproductengine 6dcde6469d [SL-711] - Eliminate some overheads in texturecache.
- Eliminate memory overhead when need duplicated scaled image.
- Small improvement in LLImageBase::getCodecFromExtension()
2017-06-06 15:30:03 +03:00
AndreyL ProductEngine a65b586b18 MAINT-6729 Additional fix for crash in LLImageGL::analyzeAlpha() 2016-12-08 17:21:05 +02:00
AndreyL ProductEngine 5e02d304f0 MAINT-6618 More checks 2016-08-09 19:26:30 +03:00
Nat Goodspeed acdb050ce5 MAINT-6584: Convert LLImage class hierarchy to standard 'bool'
instead of legacy BOOL.
2016-07-22 11:35:23 -04:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
ruslantproductengine 4042617479 MAINT-4329 Backed out changeset: fd3a4d5c2cf5 2015-02-13 20:05:48 +02:00
ruslantproductengine 41170b5603 MAINT-4329 FIXED scales each image *twice* for no apparent reason : patchset #2 2014-09-25 21:19:17 +03:00
Merov Linden 8dae4bc222 Pull merge from lindenlab/viewer-release. Fixed some conflicts and compile errors 2014-05-06 18:21:04 -07:00
Merov Linden 6bf3cb875c ACME-1195 : WIP : Lazy evaluate intermediate images in snapshot preview so perf is better in common cases, allow thumbnail to be computed from grabed frame (for SL Share), thumbnail display still buggy in SL Share 2014-01-28 10:19:57 -08:00
Merov Linden 4b2e69d8e0 ACME-1236 : Clean up llimage after refactoring so there's no difference with viewer-release 2014-01-15 10:27:49 -08:00
Merov Linden 7cc64a09a3 ACME-1236 : Refactor filters and vignette into llimagefilter, add example filters to llimage_libtest 2014-01-14 21:01:51 -08:00
Merov Linden 0c7cab771c ACME-1236 : Add lines as a new type of vignette and Brightscan as an example 2014-01-09 21:58:30 -08:00
Merov Linden 3161d822ab ACME-1236 : WIP : Added mode and angle parameter to filterScreen (renamed for consistency) 2014-01-08 15:41:42 -08:00
Merov Linden c2a974f155 ACME-1236 : WIP : Introduced screenFilter, simple creative screening filter 2014-01-07 22:10:23 -08:00
Merov Linden 3cbd0dfd84 ACME-1236 : WIP : Make each color correct filter use a per channel alpha argument, tweak Instagram-like test filters for discussion 2014-01-06 14:46:52 -08:00
Merov Linden 90cbda6db0 ACME-1236 : WIP : Add 2 new color correction filters. Add a la Instagram composite filters for testing in llimage_libtest 2014-01-03 17:31:04 -08:00
Merov Linden 35e30759c8 ACME-1236 : WIP : Added a min value to vignette 2014-01-03 15:44:29 -08:00
Merov Linden 1b5fb66292 ACME-1236 : WIP : Added the vignette mode. Can be applied to colorCorrect and color Transform. Added new -v argument to llimage_libtest 2014-01-03 14:19:29 -08:00
Merov Linden d28b92744e ACME-1236 : WIP : added all the color correction filters: colorize, linarize, equalize, contrast, brightness 2014-01-02 16:14:38 -08:00
Merov Linden 205a4e3dc6 ACME-1236 : WIP : add filterGamma, computeHistograms, colorCorrect, implemented filter gamma to llimage_libtest for testing 2014-01-01 19:42:10 -08:00
Merov Linden 9dca514c0b ACME-1236 : WIP : add filterRotate to rotate hue, add rotate as a valid argument to --filter in llimage_libtest 2014-01-01 17:58:52 -08:00
Merov Linden 08a798bb1d ACME-1236 : WIP : Implement saturation/desaturation transform filter, add it to llimage_libtest for testing 2013-12-30 20:33:33 -08:00
Merov Linden 7372afaae4 ACME-1236 : WIP : Implement colorTransform filter, grayscale and sepia using it, add parameter to llimage_libtest to use filters 2013-12-20 13:49:20 -08:00
Merov Linden 6578144b7e ACME-1236 : WIP : Added Gray Scale as an experimental filter in Flickr. Lots of ugly hacks for now 2013-12-18 15:55:13 -08:00
Richard Linden cbe397ad13 changed fast timer over to using macro
another attempt to move mem stat into base class
2013-09-05 14:04:13 -07:00
Xiaohong Bao d8c02bf062 Merge 2013-08-19 16:09:28 -06:00
Richard Linden 075a7bcc98 SH-4297 WIP interesting: viewer-interesting starts loading cached scene late
dependency cleanup - removed a lot of unecessary includes
2013-07-18 15:09:45 -07:00
Richard Linden 8208a40412 BUILDFIX: reverted changes that attempted to automate mem track
stat definition as they don't work on gcc/clang
2013-07-01 18:50:51 -07:00
Richard Linden 04bdc8ba83 SH-4294 FIX Interesting: Statistics Texture cache hit rate is always 0%
also, removed LLTrace::init and cleanup
removed derived class implementation of memory stat for LLMemTrackable
is automatic now
2013-07-01 17:04:01 -07:00
Richard Linden 0a96b47663 merge with viewer-release 2013-06-05 19:05:43 -07:00
simon c7f7c4bc4d Merge viewer-beta 2013-05-09 13:14:49 -07:00
Oz Linden ddd5659f81 merge changes for DRTVWR-294 2013-04-19 10:11:29 -04:00
simon 066f2acadf Forgot to commit @#! merge 2013-04-11 16:23:36 -07:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Richard Linden f07b9c2c69 renamed LLTrace stat gathering classes/methods to make the structure of LLTrace clearer
Count becomes CountStatHandle
Count.sum becomes sum(Count, value), etc.
2013-03-06 11:08:25 -08:00
Nyx Linden 11fe124ae9 merging in viewer-beta.
Most of the merge was clean, a couple conflicts.
Brought over a couple patches manually for llpolymesh.
2013-01-24 16:22:49 -05:00
Richard Linden cbff0e7ab8 SH-3468 WIP add memory tracking base class
attempted fix for gcc compile errors
can't use typeid() on a class that doesn't have a method
defined in a translation unit
fix is to force classes deriving from LLMemTrackable to
use their own static member named sMemStat
2013-01-04 13:48:35 -08:00
Xiaohong Bao d3b9f446a6 fix for MAINT-2147: crash in LLTextureCache::writeToFastCache on OSX 2013-01-03 22:37:44 -07:00
Don Kjer 802e738b77 Fix for alpha blending using gl fixed-functions not matching shader implementation 2012-12-18 23:40:31 +00:00
Richard Linden 1f56e57008 SH-3468 WIP add memory tracking base class
created memory tracking trace type
instrumented a few classes with memory tracking
2012-12-18 00:58:26 -08:00
Richard Linden c0224cc47a merge with viewer-development 2012-11-19 19:06:36 -08:00
simon@Simon-PC.lindenlab.com 7f0d6e0377 Pull back viewer-development with latest beta merges 2012-10-16 09:58:31 -07:00
Oz Linden e7a5dc7cda pull back changes from 3.4.1-beta8 2012-10-16 09:36:15 -04:00