[brlcad-commits] SF.net SVN: brlcad:[47188] brlcad/trunk/src/librt
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: <br...@us...> - 2011-10-11 23:01:39
|
Revision: 47188 http://brlcad.svn.sourceforge.net/brlcad/?rev=47188&view=rev Author: brlcad Date: 2011-10-11 23:01:32 +0000 (Tue, 11 Oct 2011) Log Message: ----------- remove timer52brl.c for referring to header files that haven't existed in about a decade. there doesn't seem to be much utility in even keeping this bsd-style implementation around for reference since it just emulates bsd calls, and nowhere close to a compiling state regardless. Modified Paths: -------------- brlcad/trunk/src/librt/CMakeLists.txt brlcad/trunk/src/librt/Makefile.am Removed Paths: ------------- brlcad/trunk/src/librt/timer52brl.c Modified: brlcad/trunk/src/librt/CMakeLists.txt =================================================================== --- brlcad/trunk/src/librt/CMakeLists.txt 2011-10-11 22:57:12 UTC (rev 47187) +++ brlcad/trunk/src/librt/CMakeLists.txt 2011-10-11 23:01:32 UTC (rev 47188) @@ -258,7 +258,6 @@ primitives/xxx/xxx.h search.h timer-nt.c - timer52brl.c timerhep.c timerunix.c uvpoints.cpp Modified: brlcad/trunk/src/librt/Makefile.am =================================================================== --- brlcad/trunk/src/librt/Makefile.am 2011-10-11 22:57:12 UTC (rev 47187) +++ brlcad/trunk/src/librt/Makefile.am 2011-10-11 23:01:32 UTC (rev 47188) @@ -314,7 +314,6 @@ primitives/bot/tie_kdtree.c \ search.h \ timer-nt.c \ - timer52brl.c \ timerhep.c \ timerunix.c \ uvpoints.cpp Deleted: brlcad/trunk/src/librt/timer52brl.c =================================================================== --- brlcad/trunk/src/librt/timer52brl.c 2011-10-11 22:57:12 UTC (rev 47187) +++ brlcad/trunk/src/librt/timer52brl.c 2011-10-11 23:01:32 UTC (rev 47188) @@ -1,245 +0,0 @@ -/* T I M E R 5 2 B R L . C - * BRL-CAD - * - * Copyright (c) 1985-2011 United States Government as represented by - * the U.S. Army Research Laboratory. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * version 2.1 as published by the Free Software Foundation. - * - * This library is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this file; see the file named COPYING for more - * information. - */ -/** @addtogroup timer */ -/** @{ */ -/** @file librt/timer52brl.c - * - * To provide timing information for RT. This version for System V, - * Release TWO, under 4.2 BSD, using Doug Gwyn's System-V-under-4.2 - * emulation. - * - */ - - -#include <stdio.h> -#include <memory.h> - -/* BRL's System V - under 4.2 BSD version */ - -#include "/sys/h/types.h" -#include "/sys/h/time.h" -#include "/sys/h/resource.h" - -static struct timeval time0; /* Time at which timeing started */ -static struct rusage ru0; /* Resource utilization at the start */ - -static void prusage(); -static void tvadd(); - -/** - * - */ -void -rt_prep_timer() -{ - _gettimeofday(&time0, (struct timezone *)0); - _getrusage(RUSAGE_SELF, &ru0); -} - - -static void -tvsub(tdiff, t1, t0) - struct timeval *tdiff, *t1, *t0; -{ - - tdiff->tv_sec = t1->tv_sec - t0->tv_sec; - tdiff->tv_usec = t1->tv_usec - t0->tv_usec; - if (tdiff->tv_usec < 0) - tdiff->tv_sec--, tdiff->tv_usec += 1000000; -} - - -/** - * - */ -double -rt_read_timer(str, len) - char *str; -{ - struct timeval timedol; - struct rusage ru1; - struct timeval td; - double usert; - char line[132]; - - _getrusage(RUSAGE_SELF, &ru1); - _gettimeofday(&timedol, (struct timezone *)0); - prusage(&ru0, &ru1, &timedol, &time0, line); - bu_strlcpy(str, line, len); - tvsub(&td, &ru1.ru_utime, &ru0.ru_utime); - usert = td.tv_sec + ((double)td.tv_usec) / 1000000; - if (usert < 0.00001) usert = 0.00001; - return usert; -} - - -static void -psecs(l, cp) - long l; - register char *cp; -{ - register int i; - - i = l / 3600; - if (i) { - sprintf(cp, "%d:", i); - END(cp); - i = l % 3600; - sprintf(cp, "%d%d", (i/60) / 10, (i/60) % 10); - END(cp); - } else { - i = l; - sprintf(cp, "%d", i / 60); - END(cp); - } - i %= 60; - *cp++ = ':'; - sprintf(cp, "%d%d", i / 10, i % 10); -} - - -static void -prusage(r0, r1, e, b, outp) - register struct rusage *r0, *r1; - struct timeval *e, *b; - char *outp; -{ - struct timeval tdiff; - register time_t t; - register char *cp; - register int i; - int ms; - - t = (r1->ru_utime.tv_sec-r0->ru_utime.tv_sec)*100+ - (r1->ru_utime.tv_usec-r0->ru_utime.tv_usec)/10000+ - (r1->ru_stime.tv_sec-r0->ru_stime.tv_sec)*100+ - (r1->ru_stime.tv_usec-r0->ru_stime.tv_usec)/10000; - ms = (e->tv_sec-b->tv_sec)*100 + (e->tv_usec-b->tv_usec)/10000; - -#define END(x) {while (*x) x++;} - cp = "%Uuser %Ssys %Ereal %P %Xi+%Dd %Mmaxrss %F+%Rpf %Ccsw"; - for (; *cp; cp++) { - if (*cp != '%') - *outp++ = *cp; - else if (cp[1]) switch (*++cp) { - - case 'U': - tvsub(&tdiff, &r1->ru_utime, &r0->ru_utime); - sprintf(outp, "%d.%01d", tdiff.tv_sec, tdiff.tv_usec/100000); - END(outp); - break; - - case 'S': - tvsub(&tdiff, &r1->ru_stime, &r0->ru_stime); - sprintf(outp, "%d.%01d", tdiff.tv_sec, tdiff.tv_usec/100000); - END(outp); - break; - - case 'E': - psecs(ms / 100, outp); - END(outp); - break; - - case 'P': - sprintf(outp, "%d%%", (int) (t*100 / ((ms ? ms : 1)))); - END(outp); - break; - - case 'W': - i = r1->ru_nswap - r0->ru_nswap; - sprintf(outp, "%d", i); - END(outp); - break; - - case 'X': - sprintf(outp, "%d", t == 0 ? 0 : (r1->ru_ixrss-r0->ru_ixrss)/t); - END(outp); - break; - - case 'D': - sprintf(outp, "%d", t == 0 ? 0 : - (r1->ru_idrss+r1->ru_isrss-(r0->ru_idrss+r0->ru_isrss))/t); - END(outp); - break; - - case 'K': - sprintf(outp, "%d", t == 0 ? 0 : - ((r1->ru_ixrss+r1->ru_isrss+r1->ru_idrss) - - (r0->ru_ixrss+r0->ru_idrss+r0->ru_isrss))/t); - END(outp); - break; - - case 'M': - sprintf(outp, "%d", r1->ru_maxrss/2); - END(outp); - break; - - case 'F': - sprintf(outp, "%d", r1->ru_majflt-r0->ru_majflt); - END(outp); - break; - - case 'R': - sprintf(outp, "%d", r1->ru_minflt-r0->ru_minflt); - END(outp); - break; - - case 'I': - sprintf(outp, "%d", r1->ru_inblock-r0->ru_inblock); - END(outp); - break; - - case 'O': - sprintf(outp, "%d", r1->ru_oublock-r0->ru_oublock); - END(outp); - break; - case 'C': - sprintf(outp, "%d+%d", r1->ru_nvcsw-r0->ru_nvcsw, - r1->ru_nivcsw-r0->ru_nivcsw); - END(outp); - break; - } - } - *outp = '\0'; -} - - -static void -tvadd(tsum, t0) - struct timeval *tsum, *t0; -{ - - tsum->tv_sec += t0->tv_sec; - tsum->tv_usec += t0->tv_usec; - if (tsum->tv_usec > 1000000) - tsum->tv_sec++, tsum->tv_usec -= 1000000; -} - - -/** @} */ -/* - * Local Variables: - * mode: C - * tab-width: 8 - * indent-tabs-mode: t - * c-file-style: "stroustrup" - * End: - * ex: shiftwidth=4 tabstop=8 - */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |