Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

YFrameBuffer.h

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------\
00002 |                                                                      |
00003 |                      __   __    ____ _____ ____                      |
00004 |                      \ \ / /_ _/ ___|_   _|___ \                     |
00005 |                       \ V / _` \___ \ | |   __) |                    |
00006 |                        | | (_| |___) || |  / __/                     |
00007 |                        |_|\__,_|____/ |_| |_____|                    |
00008 |                                                                      |
00009 |                               core system                            |
00010 |                                                        (C) SuSE GmbH |
00011 \----------------------------------------------------------------------/
00012 
00013   File:       YQFrameBuffer.h
00014 
00015   Author:     Stefan Hundhammer <sh@suse.de>
00016 
00017 /-*/
00018 
00019 // -*- c++ -*-
00020 
00021 
00022 #ifndef YFrameBuffer_h
00023 #define YFrameBuffer_h
00024 
00025 class YFrameBuffer
00026 {
00027 public:
00028 
00029     typedef unsigned short UINT16;
00030     typedef unsigned long UINT32;
00031     typedef UINT32 FBPixel;
00032 
00036     YFrameBuffer( int screenWidth, int screenHeight, int bitDepth );
00037 
00041     virtual ~YFrameBuffer();
00042 
00046     void setPixel( int x, int y, FBPixel pixel );
00047 
00051     FBPixel pixel( int x, int y );
00052 
00056     bool valid()        const { return _fb != 0; }
00057 
00058     int width()         const { return _width;          }
00059     int height()        const { return _height;         }
00060     int depth()         const { return _depth;          }
00061     int bytesPerPixel() const { return _bytesPerPixel;  }
00062 
00063 
00064 protected:
00065 
00069     void mmapFB();
00070 
00074     void munmapFB();
00075 
00076 
00077     // Data members
00078 
00079     int         _width;
00080     int         _height;
00081     int         _depth;
00082 
00083     void *      _fb;
00084     int         _fb_fd;
00085     UINT32 *    _fb32;
00086     UINT16 *    _fb16;
00087     size_t      _fb_len;
00088     int         _bytesPerPixel;
00089 };
00090 
00091 
00092 #endif // ifndef YFrameBuffer_h

Generated on Wed Nov 12 06:11:15 2008 for yast2-qt by  doxygen 1.3.9.1