home *** CD-ROM | disk | FTP | other *** search
- ------------------------------------------------------------------------------
- -- --
- -- GNU ADA RUNTIME LIBRARY (GNARL) COMPONENTS --
- -- --
- -- S Y S T E M . T A S K _ C L O C K . M A C H I N E _ S P E C I F I C S --
- -- --
- -- B o d y --
- -- --
- -- $Revision: 1.10 $ --
- -- --
- -- Copyright (c) 1991,1992,1993,1994,1995 FSU, All Rights Reserved --
- -- --
- -- GNARL is free software; you can redistribute it and/or modify it under --
- -- terms of the GNU Library General Public License as published by the --
- -- Free Software Foundation; either version 2, or (at your option) any --
- -- later version. GNARL is distributed in the hope that it will be use- --
- -- ful, but but WITHOUT ANY WARRANTY; without even the implied warranty of --
- -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Gen- --
- -- eral Library Public License for more details. You should have received --
- -- a copy of the GNU Library General Public License along with GNARL; see --
- -- file COPYING.LIB. If not, write to the Free Software Foundation, 675 --
- -- Mass Ave, Cambridge, MA 02139, USA. --
- -- --
- ------------------------------------------------------------------------------
-
- -- This package provides target machine specific Clock related definitions.
- -- Portability of System.Task_Clock package is accomplished separating
- -- this child package out. We only need to modify this package for
- -- different targets.
-
- -- This version of Clock uses the time() function, which is available
- -- in most C libraries. This is the "universal" version; it is
- -- only accurate to 1 second and is not the same time base used by
- -- the tasking library System.Real_Time.Clock and delays, but will
- -- work on systems without tasking or POSIX.
-
- with Interfaces.C; use Interfaces.C;
-
- package body System.Task_Clock.Machine_Specifics is
-
- -----------
- -- Clock --
- -----------
-
- function Clock return Stimespec is
-
- function gnat_time return long;
- pragma Import (C, gnat_time);
-
- begin
- return
- Stimespec_Sec_Unit * Stimespec (gnat_time);
- end Clock;
-
- begin
-
- Stimespec_Ticks := Time_Of (1, 0);
- -- gnat_time has the resolution of 1 sec.
-
- end System.Task_Clock.Machine_Specifics;
-