• Main Page
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

ImageData.hpp

Go to the documentation of this file.
00001 
00002 
00003 
00004 #ifndef GOSU_IMAGEDATA_HPP
00005 #define GOSU_IMAGEDATA_HPP
00006 
00007 #include <Gosu/Color.hpp>
00008 #include <Gosu/GraphicsBase.hpp>
00009 #include <boost/optional.hpp>
00010 #include <boost/utility.hpp>
00011 
00012 namespace Gosu
00013 {
00017     struct GLTexInfo
00018     {
00019         int texName;
00020         float left, right, top, bottom;
00021     };
00022 
00028     class ImageData : boost::noncopyable
00029     {
00030     public:
00031         virtual ~ImageData()
00032         {
00033         }
00034 
00035         virtual unsigned width() const = 0;
00036         virtual unsigned height() const = 0;
00037 
00038         virtual void draw(double x1, double y1, Color c1,
00039             double x2, double y2, Color c2,
00040             double x3, double y3, Color c3,
00041             double x4, double y4, Color c4,
00042             ZPos z, AlphaMode mode) const = 0;
00043             
00044         virtual boost::optional<GLTexInfo> glTexInfo() const = 0;
00045         virtual Bitmap toBitmap() const = 0;
00046         
00048         virtual void insert(const Bitmap& bitmap, int x, int y) = 0;
00049     };
00050 }
00051 
00052 #endif

Documentation not clear enough? Please go to one of the places listed on http://www.libgosu.org/ and leave feedback. Thanks!