summaryrefslogtreecommitdiff
path: root/otk/surface.hh
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-02-11 22:38:29 +0000
committerDana Jansens <danakj@orodu.net>2003-02-11 22:38:29 +0000
commit555facb9c737be20cd923abc15875af0281a8927 (patch)
treefed6201d3d0993cf400a0d329b3e8d92d9dd492e /otk/surface.hh
parentaceea3c0814778317be7a903f63b8363d2b1b0ef (diff)
free the surfaces' pixeldata after rendering it
Diffstat (limited to 'otk/surface.hh')
-rw-r--r--otk/surface.hh16
1 files changed, 16 insertions, 0 deletions
diff --git a/otk/surface.hh b/otk/surface.hh
index 40dfbf84..a44b9049 100644
--- a/otk/surface.hh
+++ b/otk/surface.hh
@@ -34,6 +34,18 @@ typedef u_int32_t pixel32;
typedef u_int16_t pixel16;
#endif /* HAVE_STDINT_H */
+#ifdef WORDS_BIGENDIAN
+const int default_red_shift=0;
+const int default_green_shift=8;
+const int default_blue_shift=16;
+const int endian=MSBFirst;
+#else
+const int default_red_shift=16;
+const int default_green_shift=8;
+const int default_blue_shift=0;
+const int endian=LSBFirst;
+#endif /* WORDS_BIGENDIAN */
+
class Surface {
int _screen;
Size _size;
@@ -60,6 +72,10 @@ public:
pixel32 *pixelData() { return _pixel_data; }
+ //! Frees the pixel data when it will no longer be needed. Only do this once
+ //! you have completed rendering onto the surface.
+ void freePixelData();
+
// The RenderControl classes use the internal objects in this class to render
// to it. Noone else needs them tho, so they are private.
friend class RenderControl;