WoopsiGfx 1.4
Nintendo DS 2D Graphics Library
|
00001 #ifndef _BITMAP_H_ 00002 #define _BITMAP_H_ 00003 00004 #include <nds.h> 00005 #include "woopsiarray.h" 00006 #include "mutablebitmapbase.h" 00007 00008 namespace WoopsiGfx { 00009 00010 class Graphics; 00011 00016 class Bitmap : public MutableBitmapBase { 00017 public: 00018 00024 Bitmap(u16 width, u16 height); 00025 00029 virtual inline ~Bitmap() { 00030 delete[] _bitmap; 00031 }; 00032 00039 const u16 getPixel(s16 x, s16 y) const; 00040 00047 void setPixel(const s16 x, const s16 y, const u16 colour); 00048 00053 inline const u16* getData() const { return _bitmap; }; 00054 00062 const u16* getData(s16 x, s16 y) const; 00063 00069 Graphics* newGraphics(); 00070 00078 void blit(const s16 x, const s16 y, const u16* data, const u32 size); 00079 00087 void blitFill(const s16 x, const s16 y, const u16 colour, const u32 size); 00088 00101 void copy(s16 x, s16 y, u32 size, u16* dest) const; 00102 00107 inline const u16 getWidth() const { return _width; }; 00108 00113 inline const u16 getHeight() const { return _height; }; 00114 00115 protected: 00116 u16* _bitmap __attribute__ ((aligned (4))); 00117 u16 _width; 00118 u16 _height; 00123 inline Bitmap(const Bitmap& bitmap) { }; 00124 }; 00125 } 00126 00127 #endif