xref: /haiku/headers/libs/agg/agg_conv_marker_adaptor.h (revision e39da397f5ff79f2db9f9a3ddf1852b6710578af)
139241fe2SDarkWyrm //----------------------------------------------------------------------------
2*e39da397SStephan Aßmus // Anti-Grain Geometry - Version 2.4
3*e39da397SStephan Aßmus // Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
439241fe2SDarkWyrm //
539241fe2SDarkWyrm // Permission to copy, use, modify, sell and distribute this software
639241fe2SDarkWyrm // is granted provided this copyright notice appears in all copies.
739241fe2SDarkWyrm // This software is provided "as is" without express or implied
839241fe2SDarkWyrm // warranty, and with no claim as to its suitability for any purpose.
939241fe2SDarkWyrm //
1039241fe2SDarkWyrm //----------------------------------------------------------------------------
1139241fe2SDarkWyrm // Contact: mcseem@antigrain.com
1239241fe2SDarkWyrm //          mcseemagg@yahoo.com
1339241fe2SDarkWyrm //          http://www.antigrain.com
1439241fe2SDarkWyrm //----------------------------------------------------------------------------
1539241fe2SDarkWyrm 
1639241fe2SDarkWyrm #ifndef AGG_CONV_MARKER_ADAPTOR_INCLUDED
1739241fe2SDarkWyrm #define AGG_CONV_MARKER_ADAPTOR_INCLUDED
1839241fe2SDarkWyrm 
1939241fe2SDarkWyrm #include "agg_basics.h"
2039241fe2SDarkWyrm #include "agg_conv_adaptor_vcgen.h"
2139241fe2SDarkWyrm #include "agg_vcgen_vertex_sequence.h"
2239241fe2SDarkWyrm 
2339241fe2SDarkWyrm namespace agg
2439241fe2SDarkWyrm {
2539241fe2SDarkWyrm 
2639241fe2SDarkWyrm     //=====================================================conv_marker_adaptor
2739241fe2SDarkWyrm     template<class VertexSource, class Markers=null_markers>
2839241fe2SDarkWyrm     struct conv_marker_adaptor :
2939241fe2SDarkWyrm     public conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence, Markers>
3039241fe2SDarkWyrm     {
3139241fe2SDarkWyrm         typedef Markers marker_type;
3239241fe2SDarkWyrm         typedef conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence, Markers> base_type;
3339241fe2SDarkWyrm 
conv_marker_adaptorconv_marker_adaptor3439241fe2SDarkWyrm         conv_marker_adaptor(VertexSource& vs) :
3539241fe2SDarkWyrm             conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence, Markers>(vs)
3639241fe2SDarkWyrm         {
3739241fe2SDarkWyrm         }
3839241fe2SDarkWyrm 
shortenconv_marker_adaptor3939241fe2SDarkWyrm         void shorten(double s) { base_type::generator().shorten(s); }
shortenconv_marker_adaptor4039241fe2SDarkWyrm         double shorten() const { return base_type::generator().shorten(); }
4139241fe2SDarkWyrm 
4239241fe2SDarkWyrm     private:
4339241fe2SDarkWyrm         conv_marker_adaptor(const conv_marker_adaptor<VertexSource, Markers>&);
4439241fe2SDarkWyrm         const conv_marker_adaptor<VertexSource, Markers>&
4539241fe2SDarkWyrm             operator = (const conv_marker_adaptor<VertexSource, Markers>&);
4639241fe2SDarkWyrm     };
4739241fe2SDarkWyrm 
4839241fe2SDarkWyrm 
4939241fe2SDarkWyrm }
5039241fe2SDarkWyrm 
5139241fe2SDarkWyrm #endif
52