3709192002-03-20Martin Nilsson #pike __REAL_VERSION__ // $Id: System.pmod,v 1.6 2002/03/20 16:39:52 nilsson Exp $
fc398b2001-05-31Fredrik Hübinette (Hubbe) // this module is to allow the system module to be called system.
d8d4a42001-04-29Mirar (Pontus Hagland) 
fc398b2001-05-31Fredrik Hübinette (Hubbe) inherit _system;
832dd62002-02-21Per Hedbor  constant Timer = __builtin.Timer; constant Time = __builtin.Time;
d4f5af2002-02-21Per Hedbor //! @class Timer
957c822002-02-23Martin Nilsson 
d4f5af2002-02-21Per Hedbor //! @decl static void create( int|void fast ) //! Create a new timer object. The timer keeps track of relative time //! with sub-second precision. //! //! If fast is specified, the timer will not do system calls to get //! the current time but instead use the one maintained by pike. This //! will result in faster but somewhat more inexact timekeeping. //! Also, if your program never utilizes the pike event loop the pike //! maintained current time never change.
957c822002-02-23Martin Nilsson 
d4f5af2002-02-21Per Hedbor //! @decl float get() //! Return the time in seconds since the last time get was called. //! The first time this method is called the time since the object //! was created is returned instead.
957c822002-02-23Martin Nilsson 
d4f5af2002-02-21Per Hedbor //! @decl float peek() //! Return the time in seconds since the last time @[get] was called.
957c822002-02-23Martin Nilsson 
d4f5af2002-02-21Per Hedbor //! @endclass
832dd62002-02-21Per Hedbor 
d4f5af2002-02-21Per Hedbor //! @class Time //! //! The current time as a structure containing a sec and a usec //! member.
957c822002-02-23Martin Nilsson 
d4f5af2002-02-21Per Hedbor //! @decl static void create( int fast ); //! //! If fast is true, do not request a new time from the system, //! instead use the global current time variable. //! //! This will only work in callbacks, but can save significant amounts //! of CPU.
957c822002-02-23Martin Nilsson 
d4f5af2002-02-21Per Hedbor //! @decl int sec; //! @decl int usec; //! //! The number of seconds and microseconds since the epoch and the //! last whole second, respectively. (See also @[efun::time()]) //! //! Please note that these variables will continually update when //! they are requested, there is no need to create new Time() //! objects.
957c822002-02-23Martin Nilsson 
d4f5af2002-02-21Per Hedbor //! @decl int usec_full; //! //! The number of microseconds since the epoch. Please note that //! pike has to have been compiled with bignum support for this //! variable to contain sensible values.
957c822002-02-23Martin Nilsson 
d4f5af2002-02-21Per Hedbor //! @endclass