|  |  | 
|  | //---------------------------------------------------------------------------- | 
|  | // 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 | 
|  | //---------------------------------------------------------------------------- | 
|  | // | 
|  | // conv_dash | 
|  | // | 
|  | //---------------------------------------------------------------------------- | 
|  | #ifndef AGG_CONV_DASH_INCLUDED | 
|  | #define AGG_CONV_DASH_INCLUDED | 
|  | #include "agg_basics.h" | 
|  | #include "agg_vcgen_dash.h" | 
|  | #include "agg_conv_adaptor_vcgen.h" | 
|  | namespace pdfium | 
|  | { | 
|  | namespace agg | 
|  | { | 
|  | template<class VertexSource, class Markers = null_markers> | 
|  | struct conv_dash : public conv_adaptor_vcgen<VertexSource, vcgen_dash, Markers> { | 
|  | typedef Markers marker_type; | 
|  | typedef conv_adaptor_vcgen<VertexSource, vcgen_dash, Markers> base_type; | 
|  | conv_dash(VertexSource& vs) : | 
|  | conv_adaptor_vcgen<VertexSource, vcgen_dash, Markers>(vs) | 
|  | { | 
|  | } | 
|  | void remove_all_dashes() | 
|  | { | 
|  | base_type::generator().remove_all_dashes(); | 
|  | } | 
|  | void add_dash(float dash_len, float gap_len) | 
|  | { | 
|  | base_type::generator().add_dash(dash_len, gap_len); | 
|  | } | 
|  | void dash_start(float ds) | 
|  | { | 
|  | base_type::generator().dash_start(ds); | 
|  | } | 
|  | void shorten(float s) | 
|  | { | 
|  | base_type::generator().shorten(s); | 
|  | } | 
|  | double shorten() const | 
|  | { | 
|  | return base_type::generator().shorten(); | 
|  | } | 
|  | private: | 
|  | conv_dash(const conv_dash<VertexSource, Markers>&); | 
|  | const conv_dash<VertexSource, Markers>& | 
|  | operator = (const conv_dash<VertexSource, Markers>&); | 
|  | }; | 
|  | } | 
|  | }  // namespace pdfium | 
|  | #endif |