ToglCache.h
上传用户:kellyonhid
上传日期:2013-10-12
资源大小:932k
文件大小:1k
源码类别:

3D图形编程

开发平台:

Visual C++

  1. // ToglCache.h               cache togl frame buffer for fast redraws
  2. // created 10/27/98          magi
  3. #ifndef _TOGLCACHE_H_
  4. #define _TOGLCACHE_H_
  5. class DisplayCache
  6. {
  7. public:
  8.   DisplayCache (struct Togl* togl);
  9.   ~DisplayCache();
  10.   bool Render();
  11.   bool Invalidate();
  12.   bool Update();
  13.   bool Allocate();
  14.   bool Free();
  15.   void Enable (bool bEnable);
  16.   static void InvalidateToglCache (struct Togl* togl);
  17.   static void UpdateToglCache (struct Togl* togl);
  18.   static void EnableToglCache (struct Togl* togl, bool bEnable);
  19. private:
  20.   struct Togl* mTogl;
  21.   Togl_Callback* mOldDestroyProc;
  22.   Togl_Callback* mOldReshapeProc;
  23.   Togl_Callback* mOldDisplayProc;
  24.   bool mEnabled;
  25.   bool mValid;
  26.   int mX;
  27.   int mY;
  28.   char* mData;
  29.   char* mZData;
  30.   static void DC_ToglDestroy (struct Togl* togl);
  31.   static void DC_ToglReshape (struct Togl* togl);
  32.   static void DC_ToglDisplay (struct Togl* togl);
  33.   static void AddToglDC (struct Togl* togl, DisplayCache* dc);
  34.   static DisplayCache* FindToglDC (struct Togl* togl);
  35. };
  36. #define TOGLCACHE_DEBUG 0
  37. #endif // _TOGLCACHE_H_