Mercurial > hg > svgui
diff layer/Colour3DPlotRenderer.h @ 1109:477521f95a84 spectrogram-minor-refactor
Start introducing translucent renderer
author | Chris Cannam |
---|---|
date | Mon, 18 Jul 2016 15:37:15 +0100 |
parents | 46cc4644206d |
children | d578b685d912 |
line wrap: on
line diff
--- a/layer/Colour3DPlotRenderer.h Thu Jul 14 17:14:30 2016 +0100 +++ b/layer/Colour3DPlotRenderer.h Mon Jul 18 15:37:15 2016 +0100 @@ -181,13 +181,16 @@ // then repainting from cache to the requested painter. ScrollableImageCache m_cache; - bool useBinResolutionForDrawBuffer(LayerGeometryProvider *) const; - RenderResult render(LayerGeometryProvider *v, QPainter &paint, QRect rect, bool timeConstrained); + + void renderDirectTranslucent(LayerGeometryProvider *v, + QPainter &paint, QRect rect); + void renderToCachePixelResolution(LayerGeometryProvider *v, int x0, int repaintWidth, bool rightToLeft, bool timeConstrained); + void renderToCacheBinResolution(LayerGeometryProvider *v, int x0, int repaintWidth); @@ -207,6 +210,14 @@ void recreateDrawBuffer(int w, int h); void clearDrawBuffer(int w, int h); + + enum RenderType { + DrawBufferPixelResolution, + DrawBufferBinResolution, + DirectTranslucent + }; + + RenderType decideRenderType(LayerGeometryProvider *) const; }; #endif