skia2/bench
kkinnunen 3405800d7a Make SkGLContext lifetime more well-defined
Remove refcounting from SkGLContext.

SkGLContext is expected to behave like GrContextFactory would own
it, as implied by the GrContextFactory function.

If it is refcounted, this does not hold.

Also other use sites, such as in SkOSWindow_win (command buffer gl
object), confirm the behavior. The object is explicitly owned and
destroyed, not shared.

Also fixes potential crashes from using GL context of an abandoned
context.

Also fixes potential crashes in DM/nanobench, if the GrContext lives
longer than GLContext through internal refing of GrContext.

Moves the non-trivial implementations from GrContextFactory.h to
.cpp, just for consistency sake.

Changes pathops_unittest.gyp. The pathops_unittest uses
GrContextFactory, but did not link to its implementation. The reason
they worked was that the implementation used (constructors, destructors)
happened to be in the .h file.

This works towards being able to use command buffer and NVPR from
the SampleApp.

BUG=skia:2992
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1511773005

Committed: https://skia.googlesource.com/skia/+/830e012187f951d49d7e46e196ac8d1e653a25da

Review URL: https://codereview.chromium.org/1511773005
2016-01-06 23:49:31 -08:00
..
AAClipBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
AlternatingColorPatternBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
bench_compare.py Make bench_compare executable. 2013-11-12 15:25:31 +00:00
bench_util.py Restore bench_util.py 2014-08-08 17:28:53 -04:00
BenchLogger.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
BenchLogger.h Remove Sk prefix from some bench classes. 2014-06-19 12:32:29 -07:00
Benchmark.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
Benchmark.h Began logging more gpu stats from nanobench 2015-12-02 09:05:38 -08:00
BezierBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
BigPathBench.cpp Factor out VisualBench timing code into a helper class 2015-10-05 07:23:30 -07:00
BitmapBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
BitmapRectBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
BitmapRegionDecoderBench.cpp Remove dependency on src/android from dm and nanobench 2015-11-13 09:59:11 -08:00
BitmapRegionDecoderBench.h Rename SkBitmapRegionDecoder and Create function 2015-11-06 08:56:32 -08:00
BitmapScaleBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
BlurBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
BlurImageFilterBench.cpp SkBlurImageFilter returns input when sigma = 0 2015-12-10 12:08:44 -08:00
BlurRectBench.cpp Add default ctor to SkMask 2015-12-17 11:33:12 -08:00
BlurRectsBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
BlurRoundRectBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ChartBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
check_bench_regressions.py Adds dashboard link for one-line plot on each alert item. 2014-05-13 17:38:17 +00:00
ChecksumBench.cpp Switch uses of SkChecksum::Compute to Murmur3. 2015-11-16 11:16:23 -08:00
ChromeBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
CmapBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
CodecBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
CodecBench.h Remove const from const int loops. 2015-10-01 09:43:39 -07:00
CodecBenchPriv.h Add nanobench tests for BitmapRegionDecoder 2015-09-22 11:56:16 -07:00
ColorCubeBench.cpp Switch SkAutoMalloc to SkAutoTMalloc to avoid cast 2015-12-10 10:44:13 -08:00
ColorFilterBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ColorPrivBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ControlBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
CoverageBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
DashBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
DecodingBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
DecodingBench.h Remove const from const int loops. 2015-10-01 09:43:39 -07:00
DisplacementBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
DrawBitmapAABench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ETCBitmapBench.cpp Append '\n' character to nanobench error message 2015-12-22 10:50:56 -08:00
FontCacheBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
FontScalerBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
FSRectBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
GameBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
gen_bench_expectations.py Added in framework to get more bench data 2014-06-12 11:27:40 -07:00
GeometryBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
GLBench.cpp S4 only has 8 texture units on the GLContext we create 2015-10-02 06:49:23 -07:00
GLBench.h Remove const from const int loops. 2015-10-01 09:43:39 -07:00
GLInstancedArraysBench.cpp remove explicit 'f' in glbench shader 2015-12-11 08:31:17 -08:00
GLVec4ScalarBench.cpp Make appending default precision be controled by GLSL 2015-10-26 08:38:26 -07:00
GLVertexAttributesBench.cpp Make appending default precision be controled by GLSL 2015-10-26 08:38:26 -07:00
GMBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
GMBench.h Remove const from const int loops. 2015-10-01 09:43:39 -07:00
GradientBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
GrMemoryPoolBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
GrResourceCacheBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
gUniqueGlyphIDs.h switch array to uint16_t to fix overflows 2013-06-11 19:53:19 +00:00
HairlinePathBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ImageBench.cpp Reland of move drawSprite from canvas (patchset #1 id:1 of https://codereview.chromium.org/1529803004/ ) 2015-12-16 08:38:16 -08:00
ImageCacheBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ImageFilterCollapse.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ImageFilterDAGBench.cpp Image filters: simplify filterInputGPU(). 2015-10-26 06:55:47 -07:00
InterpBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
LightingBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
LineBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
MagnifierBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
MathBench.cpp spin off remaining integer overflow fixes 2015-12-08 10:53:01 -08:00
Matrix44Bench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
MatrixBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
MatrixConvolutionBench.cpp Reland of change all factories to return their base-class (patchset #1 id:1 of https://codereview.chromium.org/1540203002/ ) 2015-12-21 08:52:45 -08:00
MemoryBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
MemsetBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
MergeBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
microbench.json Fix the other microbench schema 2014-07-25 08:30:11 -07:00
MipMapBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
MorphologyBench.cpp Revert "Revert of factories should return baseclass, allowing the impl to specialize (patchset #4 id:60001 of https://codereview.chromium.org/1390523005/ )" 2015-10-06 14:05:32 -07:00
MutexBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
nanobench.cpp Make SkGLContext lifetime more well-defined 2016-01-06 23:49:31 -08:00
nanobench.h Make NVPR a GL context option instead of a GL context 2015-12-10 06:28:13 -08:00
nanobenchAndroid.cpp Simplify linkages to Android framework internals 2015-10-26 07:21:32 -07:00
nanobenchAndroid.h Simplify linkages to Android framework internals 2015-10-26 07:21:32 -07:00
PatchBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
PatchGridBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
PathBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
PathIterBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
PerlinNoiseBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
PictureNestingBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
PictureOverheadBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
PicturePlaybackBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
PremulAndUnpremulAlphaOpsBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ReadPixBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RecordingBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RecordingBench.h Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RectanizerBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RectBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RectoriBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RefCntBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RegionBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RegionContainBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RepeatTileBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ResultsWriter.h Began logging more gpu stats from nanobench 2015-12-02 09:05:38 -08:00
RotatedRectBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
RTreeBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ScalarBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
ShaderMaskBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
Sk4fBench.cpp Unify some SkNx code 2015-12-14 11:25:18 -08:00
SkGlyphCacheBench.cpp If we swap its arguments, SkTaskGroup::batch() _is_ sk_parallel_for. 2016-01-04 19:13:19 -08:00
SkipZeroesBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
SKPAnimationBench.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
SKPAnimationBench.h Make nanobench zoom animation time based 2015-06-29 14:06:10 -07:00
SKPBench.cpp Wire up resource cache stats dumping in nanobench 2015-12-02 14:08:25 -08:00
SKPBench.h Began logging more gpu stats from nanobench 2015-12-02 09:05:38 -08:00
skpbench.json Fix scale type in JSON format 2014-06-26 15:39:31 -07:00
SortBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
StrokeBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
TableBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
TextBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
TextBlobBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
tile_analyze.py Script to plot tile vs. viewport comparison for given platform and revision. 2013-02-13 23:22:29 +00:00
TileBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
TileImageFilterBench.cpp Add a bench to test SkTileImageFilter. 2016-01-05 13:27:43 -08:00
TopoSortBench.cpp Add SkTTopoSort 2015-10-19 12:15:55 -07:00
VertBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
WritePixelsBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
WriterBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00
XfermodeBench.cpp Remove const from const int loops. 2015-10-01 09:43:39 -07:00