1 /* 2 * Copyright 2006-2007, 2023, Haiku. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Stephan Aßmus <superstippi@gmx.de> 7 * Zardshard 8 */ 9 #ifndef VERTEX_SOURCE_H 10 #define VERTEX_SOURCE_H 11 12 13 #include "IconBuild.h" 14 15 16 _BEGIN_ICON_NAMESPACE 17 18 19 class VertexSource { 20 public: 21 VertexSource() {} 22 virtual ~VertexSource() {} 23 24 virtual void rewind(unsigned path_id) = 0; 25 virtual unsigned vertex(double* x, double* y) = 0; 26 27 /*! Determines whether open paths should be closed or left open. */ 28 virtual bool WantsOpenPaths() const = 0; 29 virtual double ApproximationScale() const = 0; 30 }; 31 32 33 _END_ICON_NAMESPACE 34 35 36 #endif // VERTEX_SOURCE_H 37