Gnash
0.8.11dev
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
gui
fb
fb_glue_agg.h
Go to the documentation of this file.
1
//
2
// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
3
// Foundation, Inc
4
//
5
// This program is free software; you can redistribute it and/or modify
6
// it under the terms of the GNU General Public License as published by
7
// the Free Software Foundation; either version 3 of the License, or
8
// (at your option) any later version.
9
//
10
// This program is distributed in the hope that it will be useful,
11
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
// GNU General Public License for more details.
14
//
15
// You should have received a copy of the GNU General Public License
16
// along with this program; if not, write to the Free Software
17
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18
19
#ifndef GNASH_FB_GLUE_AGG_H
20
#define GNASH_FB_GLUE_AGG_H
21
22
#ifdef HAVE_CONFIG_H
23
#include "
gnashconfig.h
"
24
#endif
25
26
#include <boost/cstdint.hpp>
27
#include <boost/shared_ptr.hpp>
28
29
#include "
Renderer.h
"
30
#include "
fbsup.h
"
31
#include "
fb_glue.h
"
32
33
namespace
gnash {
34
35
namespace
gui {
36
37
class
FBAggGlue
:
public
FBGlue
38
{
39
public
:
40
FBAggGlue
();
41
42
// This constructor is not part of the API, as it's AGG and
43
// Framebuffer specific
44
FBAggGlue
(
int
fd);
45
46
// All of these virtuals are all defined in the base FBGlue class
47
~FBAggGlue
();
48
55
bool
init
(
int
argc,
char
***argv);
56
58
Renderer
*
createRenderHandler
();
59
62
void
prepDrawingArea
(
void
*drawing_area);
63
65
//
79
// does not need to be implemented (optional feature),
80
// but still needs to be available.
81
//
82
void
setInvalidatedRegion
(
const
SWFRect
& bounds);
83
void
setInvalidatedRegions
(
const
InvalidatedRanges
&ranges);
84
88
int
width
();
89
92
int
height
();
93
95
void
render
();
96
void
render
(
void
*
const
/* region */
) { };
97
98
size_t
getWidth
() {
return
(
_device
) ?
_device
->getWidth() : 0; };
99
size_t
getHeight
() {
return
(
_device
) ?
_device
->getWidth() : 0; };
100
size_t
getDepth
() {
return
(
_device
) ?
_device
->getDepth() : 0; };
101
102
protected
:
104
int
_fd
;
105
struct
fb_fix_screeninfo
_fixinfo
;
106
struct
fb_var_screeninfo
_varinfo
;
107
108
boost::scoped_ptr<Renderer>
_renderer
;
109
110
geometry::Range2d<int>
_validbounds
;
111
std::vector< geometry::Range2d<int> >
_drawbounds
;
112
};
113
114
}
// end of namespace gui
115
}
// end of gnash namespace
116
117
#endif // GNASH_FB_GLUE_AGG_H
118
119
// Local Variables:
120
// mode: C++
121
// indent-tabs-mode: nil
122
// End:
Generated on Mon Jul 16 2012 04:05:33 for Gnash by
1.8.1.1