-{ Copyright (C) 2005 Bas Steendijk and Peter Green\r
- For conditions of distribution and use, see copyright notice in zlib_license.txt\r
- which is included in the package\r
- ----------------------------------------------------------------------------- }\r
-\r
-\r
-\r
-{add nn msec to tv}\r
-const\r
- tv_invalidtimebig : ttimeval = (tv_sec:maxlongint;tv_usec:maxlongint);\r
- //tv_invalidtimebig will always compare as greater than any valid timeval\r
-procedure tv_add(var tv:ttimeval;msec:integer);//{ $ifdef fpc}inline;{ $endif}\r
-begin\r
- inc(tv.tv_usec,msec*1000);\r
- inc(tv.tv_sec,tv.tv_usec div 1000000);\r
- tv.tv_usec := tv.tv_usec mod 1000000;\r
-end;\r
-\r
-{tv1 >= tv2}\r
-function tv_compare(const tv1,tv2:ttimeval):boolean;//{ $ifdef fpc}inline;{ $endif}\r
-begin\r
- if tv1.tv_sec = tv2.tv_sec then begin\r
- result := tv1.tv_usec >= tv2.tv_usec;\r
- end else result := tv1.tv_sec > tv2.tv_sec;\r
-end;\r
-\r
-procedure tv_substract(var tv:ttimeval;const tv2:ttimeval);//{ $ifdef fpc}inline;{ $endif}\r
-begin\r
- dec(tv.tv_usec,tv2.tv_usec);\r
- if tv.tv_usec < 0 then begin\r
- inc(tv.tv_usec,1000000);\r
- dec(tv.tv_sec)\r
- end;\r
- dec(tv.tv_sec,tv2.tv_sec);\r
-end;\r
-\r
-procedure msectotimeval(var tv:ttimeval;msec:integer);\r
-begin\r
- tv.tv_sec := msec div 1000;\r
- tv.tv_usec := (msec mod 1000)*1000;\r
-end;\r
-\r