Changeset 54775 in vbox
- Timestamp:
- Mar 16, 2015 10:59:50 AM (10 years ago)
- File:
-
- 1 edited
-
trunk/include/iprt/time.h (modified) (16 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/time.h
r54270 r54775 93 93 DECLINLINE(int64_t) RTTimeSpecGetMicro(PCRTTIMESPEC pTime) 94 94 { 95 return pTime->i64NanosecondsRelativeToUnixEpoch / 1000;95 return pTime->i64NanosecondsRelativeToUnixEpoch / RT_NS_1US; 96 96 } 97 97 … … 106 106 DECLINLINE(PRTTIMESPEC) RTTimeSpecSetMicro(PRTTIMESPEC pTime, int64_t i64Micro) 107 107 { 108 pTime->i64NanosecondsRelativeToUnixEpoch = i64Micro * 1000;108 pTime->i64NanosecondsRelativeToUnixEpoch = i64Micro * RT_NS_1US; 109 109 return pTime; 110 110 } … … 119 119 DECLINLINE(int64_t) RTTimeSpecGetMilli(PCRTTIMESPEC pTime) 120 120 { 121 return pTime->i64NanosecondsRelativeToUnixEpoch / 1000000;121 return pTime->i64NanosecondsRelativeToUnixEpoch / RT_NS_1MS; 122 122 } 123 123 … … 132 132 DECLINLINE(PRTTIMESPEC) RTTimeSpecSetMilli(PRTTIMESPEC pTime, int64_t i64Milli) 133 133 { 134 pTime->i64NanosecondsRelativeToUnixEpoch = i64Milli * 1000000;134 pTime->i64NanosecondsRelativeToUnixEpoch = i64Milli * RT_NS_1MS; 135 135 return pTime; 136 136 } … … 145 145 DECLINLINE(int64_t) RTTimeSpecGetSeconds(PCRTTIMESPEC pTime) 146 146 { 147 return pTime->i64NanosecondsRelativeToUnixEpoch / 1000000000;147 return pTime->i64NanosecondsRelativeToUnixEpoch / RT_NS_1SEC; 148 148 } 149 149 … … 158 158 DECLINLINE(PRTTIMESPEC) RTTimeSpecSetSeconds(PRTTIMESPEC pTime, int64_t i64Seconds) 159 159 { 160 pTime->i64NanosecondsRelativeToUnixEpoch = i64Seconds * 1000000000;160 pTime->i64NanosecondsRelativeToUnixEpoch = i64Seconds * RT_NS_1SEC; 161 161 return pTime; 162 162 } … … 227 227 DECLINLINE(PRTTIMESPEC) RTTimeSpecAddMicro(PRTTIMESPEC pTime, int64_t i64Micro) 228 228 { 229 pTime->i64NanosecondsRelativeToUnixEpoch += i64Micro * 1000;229 pTime->i64NanosecondsRelativeToUnixEpoch += i64Micro * RT_NS_1US; 230 230 return pTime; 231 231 } … … 241 241 DECLINLINE(PRTTIMESPEC) RTTimeSpecAddMilli(PRTTIMESPEC pTime, int64_t i64Milli) 242 242 { 243 pTime->i64NanosecondsRelativeToUnixEpoch += i64Milli * 1000000;243 pTime->i64NanosecondsRelativeToUnixEpoch += i64Milli * RT_NS_1MS; 244 244 return pTime; 245 245 } … … 255 255 DECLINLINE(PRTTIMESPEC) RTTimeSpecAddSeconds(PRTTIMESPEC pTime, int64_t i64Seconds) 256 256 { 257 pTime->i64NanosecondsRelativeToUnixEpoch += i64Seconds * 1000000000;257 pTime->i64NanosecondsRelativeToUnixEpoch += i64Seconds * RT_NS_1SEC; 258 258 return pTime; 259 259 } … … 297 297 DECLINLINE(PRTTIMESPEC) RTTimeSpecSubMicro(PRTTIMESPEC pTime, int64_t i64Micro) 298 298 { 299 pTime->i64NanosecondsRelativeToUnixEpoch -= i64Micro * 1000;299 pTime->i64NanosecondsRelativeToUnixEpoch -= i64Micro * RT_NS_1US; 300 300 return pTime; 301 301 } … … 311 311 DECLINLINE(PRTTIMESPEC) RTTimeSpecSubMilli(PRTTIMESPEC pTime, int64_t i64Milli) 312 312 { 313 pTime->i64NanosecondsRelativeToUnixEpoch -= i64Milli * 1000000;313 pTime->i64NanosecondsRelativeToUnixEpoch -= i64Milli * RT_NS_1MS; 314 314 return pTime; 315 315 } … … 325 325 DECLINLINE(PRTTIMESPEC) RTTimeSpecSubSeconds(PRTTIMESPEC pTime, int64_t i64Seconds) 326 326 { 327 pTime->i64NanosecondsRelativeToUnixEpoch -= i64Seconds * 100000000; 328 return pTime; 327 pTime->i64NanosecondsRelativeToUnixEpoch -= i64Seconds * RT_NS_1SEC; 328 return pTime; 329 } 330 331 332 /** 333 * Gives the time in seconds and nanoseconds. 334 * 335 * @returns pTime. 336 * @param pTime The time spec to interpret. 337 * @param *pi32Seconds Where to store the time period in seconds. 338 * @param *pi32Nano Where to store the time period in nanoseconds. 339 */ 340 DECLINLINE(void) RTTimeSpecGetSecondsAndNano(PRTTIMESPEC pTime, int32_t *pi32Seconds, int32_t *pi32Nano) 341 { 342 int64_t i64 = RTTimeSpecGetNano(pTime); 343 int32_t i32Nano = (int32_t)(i64 % RT_NS_1SEC); 344 i64 /= RT_NS_1SEC; 345 if (i32Nano < 0) 346 { 347 i32Nano += RT_NS_1SEC; 348 i64--; 349 } 350 *pi32Seconds = (int32_t)i64; 351 *pi32Nano = i32Nano; 329 352 } 330 353 … … 342 365 { 343 366 int64_t i64 = RTTimeSpecGetMicro(pTime); 344 int32_t i32Micro = (int32_t)(i64 % 1000000);345 i64 /= 1000000;367 int32_t i32Micro = (int32_t)(i64 % RT_US_1SEC); 368 i64 /= RT_US_1SEC; 346 369 if (i32Micro < 0) 347 370 { 348 i32Micro += 1000000;371 i32Micro += RT_US_1SEC; 349 372 i64--; 350 373 } … … 380 403 { 381 404 int64_t i64 = RTTimeSpecGetNano(pTime); 382 int32_t i32Nano = (int32_t)(i64 % 1000000000);383 i64 /= 1000000000;405 int32_t i32Nano = (int32_t)(i64 % RT_NS_1SEC); 406 i64 /= RT_NS_1SEC; 384 407 if (i32Nano < 0) 385 408 { 386 i32Nano += 1000000000;409 i32Nano += RT_NS_1SEC; 387 410 i64--; 388 411 } … … 482 505 { 483 506 return (pTime->i64NanosecondsRelativeToUnixEpoch - RTTIME_OFFSET_DOS_TIME) 484 / 1000000000;507 / RT_NS_1SEC; 485 508 } 486 509 … … 495 518 DECLINLINE(PRTTIMESPEC) RTTimeSpecSetDosSeconds(PRTTIMESPEC pTime, int64_t i64Seconds) 496 519 { 497 pTime->i64NanosecondsRelativeToUnixEpoch = i64Seconds * 1000000000520 pTime->i64NanosecondsRelativeToUnixEpoch = i64Seconds * RT_NS_1SEC 498 521 + RTTIME_OFFSET_DOS_TIME; 499 522 return pTime;
Note:
See TracChangeset
for help on using the changeset viewer.

