29 #ifndef GNASH_RENDER_HANDLER_OVG_H 30 #define GNASH_RENDER_HANDLER_OVG_H 48 # ifdef HAVE_VG_VGEXT_H 49 # include <VG/vgext.h> 52 #include <VG/openvg.h> 82 void init(
float x,
float y);
83 CachedBitmap *createCachedBitmap(std::unique_ptr<image::GnashImage> im);
88 void world_to_pixel(
int& x,
int& y,
float world_x,
float world_y)
const;
95 void begin_display(
const gnash::rgba&,
int,
int,
float,
98 void drawLine(
const std::vector<point>& coords,
const rgba&
fill,
101 const SWFRect* bounds,
bool smooth);
102 void draw_poly(
const std::vector<point>& corners,
103 const rgba& fill,
const rgba& outline,
111 void set_antialiased(
bool enable);
112 void begin_submit_mask();
113 void end_submit_mask();
117 void set_scale(
float xscale,
float yscale);
122 void endInternalRender();
124 unsigned int getBitsPerPixel();
129 void printVGParams();
130 void printVGHardware();
131 static void printVGPath(VGPath
path);
132 static void printVGMatrix(VGfloat *mat);
133 static void printVGMatrix(
const SWFMatrix &mat);
135 static const char *getErrorString(VGErrorCode error);
139 void add_paths(
const PathVec& path_vec);
140 Path reverse_path(
const Path& cur_path);
141 const Path* find_connecting_path(
const Path& to_connect,
142 std::list<const Path*> path_refs);
143 PathVec normalize_paths(
const PathVec &paths);
148 void analyze_paths(
const PathVec &paths,
bool& have_shape,
154 void draw_outlines(
const PathVec& path_vec,
const SWFMatrix& mat,
157 std::list<PathPtrVec> get_contours(
const PathPtrVec &paths);
158 PathPtrVec paths_by_style(
const PathVec& path_vec,
unsigned int style);
159 std::vector<PathVec::const_iterator> find_subshapes(
const PathVec& path_vec);
160 void apply_matrix_to_paths(std::vector<Path>& paths,
const SWFMatrix& mat);
162 void draw_subshape(
const PathVec& path_vec,
const SWFMatrix& mat,
164 const std::vector<FillStyle>& fill_styles,
165 const std::vector<LineStyle>& line_styles);
166 void draw_mask(
const PathVec& path_vec);
167 void draw_submask(
const PathVec& path_vec,
const SWFMatrix& mat,
176 float _display_width;
177 float _display_height;
179 std::vector<PathVec> _masks;
181 #ifdef OPENVG_VERSION_1_1 182 VGMaskLayer _mask_layer;
190 VGPaint _strokepaint;
200 double _aspect_ratio;
219 #endif // __RENDER_HANDLER_OVG_H__
std::vector< Path > PathVec
Definition: OpenVGRenderer.h:66
VGPaint fill
Definition: testr_gtk.cpp:86
Definition: SWFMatrix.h:53
VGPath path
Definition: testr_gtk.cpp:84
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:40
dtype_t
The list of supported device types.
Definition: GnashDevice.h:48
void setFillPaint(const VGPaint paint)
Definition: OpenVGRenderer.h:126
std::vector< geometry::Range2d< int > > ClipBounds
Definition: OpenVGRenderer.h:67
2D Point class
Definition: Point2d.h:38
Definition: GnashKey.h:149
Base class for render handlers.
Definition: Renderer.h:188
std::vector< const Path * > PathPtrVec
Definition: OpenVGRenderer.cpp:895
DSOEXPORT Renderer * create_handler(const char *)
Definition: OpenVGRenderer.cpp:1265
std::vector< const Path * > PathRefs
Definition: OpenVGRenderer.h:65
FillStyle describes the various fill styles for shapes.
Definition: FillStyle.h:281
A subset of a shape, a series of edges sharing a single set of styles.
Definition: Geometry.h:166
Definition: OpenVGRenderer.h:72
std::int32_t x
Definition: BitmapData_as.cpp:434
#define DSOEXPORT
Definition: dsodefs.h:55
For the outside of outline shapes, or just bare lines.
Definition: LineStyle.h:50
std::int32_t y
Definition: BitmapData_as.cpp:435
Base class for different types of bitmaps.
Definition: GnashImage.h:77
Rectangle class, see swf defined rectangle record.
Definition: SWFRect.h:44
Definition: GnashKey.h:159
A CachedBitmap is created by the renderer in a format of its choosing.
Definition: CachedBitmap.h:37
std::string description() const
Return a description of this renderer.
Definition: OpenVGRenderer.h:75
VGPaint paint
Definition: testr_gtk.cpp:85
Holds information needed to draw a shape.
Definition: ShapeRecord.h:126
A basic RGBA type.
Definition: RGBA.h:35