summaryrefslogtreecommitdiff
path: root/core/src/fxge/agg/agg23/agg_renderer_scanline.h
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-06-16 16:29:44 -0700
committerTom Sepez <tsepez@chromium.org>2015-06-16 16:29:44 -0700
commit2ca8fcbc8a7a3ef6adfac154c47068c1696205d0 (patch)
treede3f825c75b1b92908825f68af8a4e7146cf97fd /core/src/fxge/agg/agg23/agg_renderer_scanline.h
parentea44bd064a86679a47a7265020f997d6e3b88336 (diff)
downloadpdfium-2ca8fcbc8a7a3ef6adfac154c47068c1696205d0.tar.xz
Separate agg-authored code from fx-authored code.chromium/2439chromium/2438chromium/2437chromium/2436chromium/2435
Creates a separate library so we can apply less-strict warnings to the code we can't change from upstream vs. the code we can change, reducing noise in the standalone build. Remove needless foo.{cpp,h} files that merely perform indirection via #include "some_other_path/foo.{cpp,h}". BUG=pdfium:166 R=brucedawson@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/1152743007.
Diffstat (limited to 'core/src/fxge/agg/agg23/agg_renderer_scanline.h')
-rw-r--r--core/src/fxge/agg/agg23/agg_renderer_scanline.h93
1 files changed, 0 insertions, 93 deletions
diff --git a/core/src/fxge/agg/agg23/agg_renderer_scanline.h b/core/src/fxge/agg/agg23/agg_renderer_scanline.h
deleted file mode 100644
index 62d104f7f2..0000000000
--- a/core/src/fxge/agg/agg23/agg_renderer_scanline.h
+++ /dev/null
@@ -1,93 +0,0 @@
-
-//----------------------------------------------------------------------------
-// Anti-Grain Geometry - Version 2.3
-// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
-//
-// Permission to copy, use, modify, sell and distribute this software
-// is granted provided this copyright notice appears in all copies.
-// This software is provided "as is" without express or implied
-// warranty, and with no claim as to its suitability for any purpose.
-//
-//----------------------------------------------------------------------------
-// Contact: mcseem@antigrain.com
-// mcseemagg@yahoo.com
-// http://www.antigrain.com
-//----------------------------------------------------------------------------
-#ifndef AGG_RENDERER_SCANLINE_INCLUDED
-#define AGG_RENDERER_SCANLINE_INCLUDED
-#include "agg_basics.h"
-#include "agg_renderer_base.h"
-#include "agg_render_scanlines.h"
-namespace agg
-{
-template<class BaseRenderer, class SpanGenerator> class renderer_scanline_aa
-{
-public:
- typedef BaseRenderer base_ren_type;
- typedef SpanGenerator span_gen_type;
- renderer_scanline_aa() : m_ren(0), m_span_gen(0) {}
- renderer_scanline_aa(base_ren_type& ren, span_gen_type& span_gen) :
- m_ren(&ren),
- m_span_gen(&span_gen)
- {}
- void attach(base_ren_type& ren, span_gen_type& span_gen)
- {
- m_ren = &ren;
- m_span_gen = &span_gen;
- }
- void prepare(unsigned max_span_len)
- {
- m_span_gen->prepare(max_span_len);
- }
- template<class Scanline> void render(const Scanline& sl)
- {
- int y = sl.y();
- m_ren->first_clip_box();
- do {
- int xmin = m_ren->xmin();
- int xmax = m_ren->xmax();
- if(y >= m_ren->ymin() && y <= m_ren->ymax()) {
- unsigned num_spans = sl.num_spans();
- typename Scanline::const_iterator span = sl.begin();
- for(;;) {
- int x = span->x;
- int len = span->len;
- bool solid = false;
- const typename Scanline::cover_type* covers = span->covers;
- if(len < 0) {
- solid = true;
- len = -len;
- }
- if(x < xmin) {
- len -= xmin - x;
- if(!solid) {
- covers += xmin - x;
- }
- x = xmin;
- }
- if(len > 0) {
- if(x + len > xmax) {
- len = xmax - x + 1;
- }
- if(len > 0) {
- m_ren->blend_color_hspan_no_clip(
- x, y, len,
- m_span_gen->generate(x, y, len),
- solid ? 0 : covers,
- *covers);
- }
- }
- if(--num_spans == 0) {
- break;
- }
- ++span;
- }
- }
- } while(m_ren->next_clip_box());
- }
-private:
- base_ren_type* m_ren;
- SpanGenerator* m_span_gen;
-};
-}
-#endif