Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

vuDrawTools.h

Go to the documentation of this file.
00001 
00016 #ifndef _vuDrawTools_h_
00017 #define _vuDrawTools_h_
00018 
00019 //to include this, special WXdefines have to be made in the makefile
00020 //this header is also used in the Volume subtree where we don't have
00021 //such defines --> no GUI specific includes
00022 //#include <wx/dc.h>
00023 
00024 #include "vuSimpleTypes.h"
00025 
00026 #include "vuThread.h"
00027 
00030 
00031 
00046 class vuDrawTools
00047 {
00048  public:
00050 
00052   static void setDC(void* pDC); //pointer to wxDC
00054   static void quitDC();
00056 
00057   static void setColour(byte r, byte g, byte b);
00059 
00060   static void setBGColour(byte r, byte g, byte b);
00062   static void setPixel(int x, int y);
00064 
00068   static void blit(const byte *buf, int sx, int sy, int px, int py);
00069   static void blit2(const byte *buf, int sx, int sy, int px, int py);
00070   static void partblit (const byte *buf, int sx, int sy, int length);
00071   static void finishpartblit ();
00072   static void setImgWidthHeight (int sx, int sy);
00073   static unsigned char * getData ();
00074 //  static void blit(const byte *buf, int ammount_copied);
00076   static void clearBG();
00078 
00081   static void clearBGWithoutRect(int ox,int oy,int sx,int sy);
00082 };
00083 /*
00084 class vuDrawToolsns
00085 {
00086  public:
00088   ! \param pDC is a pointer to a wxDC but because there is no
00089              association with wxWindows here, we have to cast it to void*
00090   void setDC(void* pDC);        //pointer to wxDC
00092   void quitDC();
00094   ! \param r,g,b red, green, blue values from 0 to 255
00095   static void setColour(byte r, byte g, byte b);
00097   ! \param r,g,b red, green, blue values from 0 to 255
00098   void setBGColour(byte r, byte g, byte b);
00100   void setPixel(int x, int y);
00102   ! As mentioned above. This function needs to be improved. Perhaps
00103       we do not allow an external framebuffer but instead give a handle
00104       to an internal one.
00105 
00106   void blit(const byte *buf, int sx, int sy, int px, int py);
00107   void blit2(const byte *buf, int sx, int sy, int px, int py);
00108   void partblit (const byte *buf, int sx, int sy, int length);
00109   void finishpartblit ();
00110   void setImgWidthHeight (int sx, int sy);
00111   unsigned char * getData ();
00112 //  static void blit(const byte *buf, int ammount_copied);
00114   void clearBG();
00116   ! ...but doesn't work and will be obsolete with an improved
00117       version of vuDrawTools
00118 
00119   void clearBGWithoutRect(int ox,int oy,int sx,int sy);
00120 
00121  private:
00122   void* cDCns;
00123   void* imgns;
00124 
00125   vuMutex DrawToolMutexns;
00126 };*/
00127 
00128 #endif
00129 

Generated on Wed Dec 15 21:20:33 2004 for vuVolume by  doxygen 1.3.9.1