[teklib-general] teklib: Link library: Added TCreateTime(), TExtractTime()

Timm S. Mueller tmueller at neoscientists.org
Wed Jan 14 13:36:44 CET 2009


details:   http://hg.teklib.org/teklib/rev/ff917f56d03f
changeset: 235:ff917f56d03f
user:      Timm S. Mueller <tmueller at neoscientists.org>
date:      Wed Jan 14 11:58:21 2009 +0100
description:
Link library: Added TCreateTime(), TExtractTime()

diffs (truncated from 292 to 100 lines):

diff -r 93b339d16400 -r ff917f56d03f src/date/tests/datetest.c
--- a/src/date/tests/datetest.c	Wed Jan 14 01:50:25 2009 +0100
+++ b/src/date/tests/datetest.c	Wed Jan 14 11:58:21 2009 +0100
@@ -187,9 +187,9 @@
 	TDATE wait;
 	TTIME dt;
 	TTIME t0, t1;
+	TINT sec, usec;
 
-	dt.tdt_Int64 = 2345678;
-
+	TCreateTime(&dt, 0, 2, 345678);
 	TGetUniversalDate(treq, &wait);
 	TAddDate(&wait, 0, &dt);
 	printf("waiting for a date 2.345678 seconds in the future...\n");
@@ -199,7 +199,8 @@
 	TGetSystemTime(treq2, &t1);
 
 	TSubTime(&t1, &t0);
-	printf("Done. Time measured: %2.3f\n", (TFLOAT) t1.tdt_Int64 / 1000000);
+	TExtractTime(&t1, TNULL, &sec, &usec);
+	printf("Done. Time measured: %d.%06d\n", sec, usec);
 }
 
 /*****************************************************************************/
@@ -567,6 +568,7 @@
 			TDATE uni, now;
 			struct TDateBox dbox;
 			TTIME utcbias;
+			TINT sec;
 
 			printf("-------------- time tests --------------\n\n");
 			test10();
@@ -594,8 +596,8 @@
 
 			TDiffDate(&now, &uni, &utcbias);
 
-			printf("We are seconds west of UTC: %d\n",
-				- (TINT) (utcbias.tdt_Int64 / 1000000));
+			TExtractTime(&utcbias, TNULL, &sec, TNULL);
+			printf("We are seconds west of UTC: %d\n", -sec);
 
 			TUnpackDate(&now, &dbox, TDB_ALL);
 			printf("Local date: %d.%d.%d - time: %d:%d:%d\n\n",
diff -r 93b339d16400 -r ff917f56d03f src/exec/exec_time.c
--- a/src/exec/exec_time.c	Wed Jan 14 01:50:25 2009 +0100
+++ b/src/exec/exec_time.c	Wed Jan 14 11:58:21 2009 +0100
@@ -113,7 +113,7 @@
 {
 	TUINT sig = 0;
 
-	if (timeout && timeout->tdt_Int64)
+	if (timeout)
 	{
 		TAPTR saverp = tr->ttr_Req.io_ReplyPort;
 
diff -r 93b339d16400 -r ff917f56d03f src/exec/tests/atomterror.c
--- a/src/exec/tests/atomterror.c	Wed Jan 14 01:50:25 2009 +0100
+++ b/src/exec/tests/atomterror.c	Wed Jan 14 11:58:21 2009 +0100
@@ -122,6 +122,7 @@
 			listatom = TLockAtom("list.atom", TATOMF_NAME | TATOMF_CREATE);
 			if (listatom)
 			{
+				TINT sec, usec;
 				TFLOAT s;
 				TGetSystemTime(TimeReq, &t0);
 
@@ -148,7 +149,8 @@
 
 				TGetSystemTime(TimeReq, &t1);
 				TSubTime(&t1, &t0);
-				s = (TFLOAT) t1.tdt_Int64 / 1000000;
+				TExtractTime(&t1, TNULL, &sec, &usec);
+				s = (TFLOAT) sec + usec * 0.000001;
 				printf("all done. time elapsed: %.3fs\n", s);
 
 			} else
diff -r 93b339d16400 -r ff917f56d03f src/exec/tests/timedwait.c
--- a/src/exec/tests/timedwait.c	Wed Jan 14 01:50:25 2009 +0100
+++ b/src/exec/tests/timedwait.c	Wed Jan 14 11:58:21 2009 +0100
@@ -51,7 +51,7 @@
 		{
 			r = (seed = TGetRand(seed)) % numtasks;
 			TSignal(t->testtask, t->signals[r]);
-			wait.tdt_Int64 = (seed = TGetRand(seed)) % 1000;
+			TCreateTime(&wait, 0, 0, (seed = TGetRand(seed)) % 1000);
 			sigs = TWaitTime(treq, &wait, TTASK_SIG_ABORT);
 
 		} while (!(sigs & TTASK_SIG_ABORT));
@@ -87,7 +87,7 @@
 
 		do
 		{
-			time.tdt_Int64 = (seed = TGetRand(seed)) % 1000;
+			TCreateTime(&time, 0, 0, (seed = TGetRand(seed)) % 1000);
 			sigs = TWaitTime(treq, &time, TTASK_SIG_ABORT);
 
 		} while (!(sigs & TTASK_SIG_ABORT));
@@ -127,9 +127,14 @@
 				TTIME tdelay;


More information about the teklib-general mailing list