29 #ifndef GNASH_RENDER_HANDLER_OVG_H
30 #define GNASH_RENDER_HANDLER_OVG_H
35 #include <boost/scoped_array.hpp>
36 #include <boost/scoped_ptr.hpp>
49 # ifdef HAVE_VG_VGEXT_H
50 # include <VG/vgext.h>
53 #include <VG/openvg.h>
83 void init(
float x,
float y);
84 CachedBitmap *createCachedBitmap(std::auto_ptr<image::GnashImage> im);
89 void world_to_pixel(
int&
x,
int&
y,
float world_x,
float world_y)
const;
96 void begin_display(
const gnash::rgba&,
int,
int,
float,
99 void drawLine(
const std::vector<point>& coords,
const rgba&
fill,
102 const SWFRect* bounds,
bool smooth);
103 void draw_poly(
const std::vector<point>& corners,
112 void set_antialiased(
bool enable);
113 void begin_submit_mask();
114 void end_submit_mask();
118 void set_scale(
float xscale,
float yscale);
123 void endInternalRender();
125 unsigned int getBitsPerPixel();
130 void printVGParams();
131 void printVGHardware();
132 static void printVGPath(VGPath
path);
133 static void printVGMatrix(VGfloat *mat);
134 static void printVGMatrix(
const SWFMatrix &mat);
136 static const char *getErrorString(VGErrorCode error);
140 void add_paths(
const PathVec& path_vec);
141 Path reverse_path(
const Path& cur_path);
142 const Path* find_connecting_path(
const Path& to_connect,
143 std::list<const Path*> path_refs);
149 void analyze_paths(
const PathVec &paths,
bool& have_shape,
158 std::list<PathPtrVec> get_contours(
const PathPtrVec &paths);
160 std::vector<PathVec::const_iterator> find_subshapes(
const PathVec& path_vec);
161 void apply_matrix_to_paths(std::vector<Path>& paths,
const SWFMatrix& mat);
165 const std::vector<FillStyle>& fill_styles,
166 const std::vector<LineStyle>& line_styles);
167 void draw_mask(
const PathVec& path_vec);
177 float _display_width;
178 float _display_height;
180 std::vector<PathVec> _masks;
182 #ifdef OPENVG_VERSION_1_1
183 VGMaskLayer _mask_layer;
191 VGPaint _strokepaint;
201 double _aspect_ratio;
220 #endif // __RENDER_HANDLER_OVG_H__
int _height
Definition: Renderer_cairo.cpp:213
std::vector< Path > PathVec
Definition: OpenVGRenderer.h:67
int _width
Definition: Renderer_cairo.cpp:212
VGPaint fill
Definition: testr_gtk.cpp:86
Definition: SWFMatrix.h:53
VGPath path
Definition: testr_gtk.cpp:84
dtype_t
The list of supported device types.
Definition: GnashDevice.h:48
void setFillPaint(const VGPaint paint)
Definition: OpenVGRenderer.h:127
std::vector< geometry::Range2d< int > > ClipBounds
Definition: OpenVGRenderer.h:68
2D Point class
Definition: Point2d.h:38
Definition: GnashKey.h:149
Base class for render handlers.
Definition: Renderer.h:190
std::vector< const Path * > PathPtrVec
Definition: OpenVGRenderer.cpp:894
std::string description() const
Return a description of this renderer.
Definition: OpenVGRenderer.h:76
DSOEXPORT Renderer * create_handler(const char *)
Definition: OpenVGRenderer.cpp:1264
std::vector< const Path * > PathRefs
Definition: OpenVGRenderer.h:66
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:73
boost::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:49
boost::int32_t y
Definition: BitmapData_as.cpp:435
Base class for different types of bitmaps.
Definition: GnashImage.h:79
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
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