cs sdk v 1.14 released

Home  |  Product  |  Documents  |  Tutorials  |  FAQ |   Download  |   Forum |   Contacts  |   Link  


  Cross Suit

 Cross Suit SDK

 Documents
      classes
 Starting...
           Tutorials

 LUA tutorials

   Support

  Forum
  q&a

 Product parts

 Virtual File system

 Virtual Render
 Virtual Machine
   

  Demo Games

   

 3D Engine

  gvSystem(dx9)

 Link

 

 

gv_timer.h

Go to the documentation of this file.
00001 /******************************************************
00002         gv System engine 3D/2D
00003 *******************************************************/
00004 
00005 #pragma once
00006 /*-----------------------------------------------------------------------------
00007         gvTimer_Win32:
00008 -----------------------------------------------------------------------------*/
00010 #ifdef _WIN32
00011 #include <time.h> // clock
00012 #endif
00013 
00015 class gv_iTimer
00016 {
00017 public:
00019         virtual ~gv_iTimer(void) {};
00020         virtual void initTimer(void){}; 
00021         virtual int Refresh(void){return 0;};
00022         virtual void Reset(void){};
00023 };
00024 
00026 class gvTimer_Win32 : public gv_iTimer
00027 {
00028 public:
00029         gvTimer_Win32();
00030         virtual ~gvTimer_Win32(void);
00031         
00032         virtual void initTimer(void);
00033         virtual int Refresh(void);
00035         double                  fTime;                  
00037         double                  flastTime;              
00039         double                  frametime;              
00041         int                             frames;                 
00042 
00043         //LARGE_INTEGER tFrequency;
00044         double                  tResolution;
00045         
00046 private:
00047         int                             lowshift;
00048         unsigned char   tPerformanceTimerEnabled;
00049 
00050         unsigned int    oldTime;
00051         int                             sametimecount;  // counter for frames with the same time.
00052 public:
00053         virtual void Reset(void);
00054         double fake_value;
00055 };
00056 
00058 class gv_SpeedTimer
00059 {
00060 public:
00061         float Delta, DeltaLongTerm;
00062         float GameTime;
00063         bool Paused;
00064 
00065         gv_SpeedTimer(void);
00066 
00067         void Update(void);
00068 };
00069 
00070 
00071 
00072 
00073 
00075 class gvTimer_LINUX : public gv_iTimer
00076 {
00077 public:
00079         int frames;                     
00080         gvTimer_LINUX(void);
00082         unsigned int getTime(void);
00083 
00085         virtual void initTimer(void);
00086 
00088         void setTime(unsigned int time);
00089 
00091         void stopTimer(void);
00092 
00094         void startTimer(void);
00095 
00097         void setSpeed(float speed);
00098 
00100         float getSpeed(void);
00101 
00103         bool isStopped(void);
00105         void tick(void);
00107         virtual int Refresh(void);
00109         virtual void Reset(void);
00111         unsigned int getRealTime(void);
00112         unsigned int getStaticTime(void);
00113         unsigned int    getDT(void);
00115         float           getDTF(void);
00116 private:
00117 
00118         void            initVirtualTimer();
00119         float           VirtualTimerSpeed;
00120         signed int      VirtualTimerStopCounter;
00121         unsigned int StartRealTime;
00122         unsigned int LastVirtualTime;
00123         unsigned int StaticTime;
00125         unsigned int            DeltaTime;
00126         float           fdt;
00127 public:
00129         float frametime;
00131         double fake_value;
00132 };
00133 
00134 
00135 

Copyright(C) gvSystem & GamePlus All Rights Reserved.