Lines Matching refs:base

231 adjust_monotonic_time(struct evutil_monotonic_timer *base,  in adjust_monotonic_time()  argument
234 evutil_timeradd(tv, &base->adjust_monotonic_clock, tv); in adjust_monotonic_time()
236 if (evutil_timercmp(tv, &base->last_time, <)) { in adjust_monotonic_time()
239 evutil_timersub(&base->last_time, tv, &adjust); in adjust_monotonic_time()
240 evutil_timeradd(&adjust, &base->adjust_monotonic_clock, in adjust_monotonic_time()
241 &base->adjust_monotonic_clock); in adjust_monotonic_time()
242 *tv = base->last_time; in adjust_monotonic_time()
244 base->last_time = *tv; in adjust_monotonic_time()
307 evutil_configure_monotonic_time_(struct evutil_monotonic_timer *base, in evutil_configure_monotonic_time_() argument
329 base->monotonic_clock = CLOCK_MONOTONIC_COARSE; in evutil_configure_monotonic_time_()
335 base->monotonic_clock = CLOCK_MONOTONIC; in evutil_configure_monotonic_time_()
343 base->monotonic_clock = -1; in evutil_configure_monotonic_time_()
348 evutil_gettime_monotonic_(struct evutil_monotonic_timer *base, in evutil_gettime_monotonic_() argument
353 if (base->monotonic_clock < 0) { in evutil_gettime_monotonic_()
356 adjust_monotonic_time(base, tp); in evutil_gettime_monotonic_()
360 if (clock_gettime(base->monotonic_clock, &ts) == -1) in evutil_gettime_monotonic_()
382 evutil_configure_monotonic_time_(struct evutil_monotonic_timer *base, in evutil_configure_monotonic_time_() argument
387 memset(base, 0, sizeof(*base)); in evutil_configure_monotonic_time_()
396 memcpy(&base->mach_timebase_units, &mi, sizeof(mi)); in evutil_configure_monotonic_time_()
398 base->mach_timebase_units.numer = 0; in evutil_configure_monotonic_time_()
404 evutil_gettime_monotonic_(struct evutil_monotonic_timer *base, in evutil_gettime_monotonic_() argument
408 if (base->mach_timebase_units.numer == 0) { in evutil_gettime_monotonic_()
411 adjust_monotonic_time(base, tp); in evutil_gettime_monotonic_()
416 usec = (abstime * base->mach_timebase_units.numer) in evutil_gettime_monotonic_()
417 / (base->mach_timebase_units.denom); in evutil_gettime_monotonic_()
487 evutil_GetTickCount_(struct evutil_monotonic_timer *base) in evutil_GetTickCount_() argument
489 if (base->GetTickCount64_fn) { in evutil_GetTickCount_()
491 return base->GetTickCount64_fn(); in evutil_GetTickCount_()
492 } else if (base->GetTickCount_fn) { in evutil_GetTickCount_()
498 ev_uint64_t v = base->GetTickCount_fn(); in evutil_GetTickCount_()
506 if (ticks < base->last_tick_count) { in evutil_GetTickCount_()
507 base->adjust_tick_count += ((ev_uint64_t)1) << 32; in evutil_GetTickCount_()
509 base->last_tick_count = ticks; in evutil_GetTickCount_()
510 return ticks + base->adjust_tick_count; in evutil_GetTickCount_()
515 evutil_configure_monotonic_time_(struct evutil_monotonic_timer *base, in evutil_configure_monotonic_time_() argument
521 memset(base, 0, sizeof(*base)); in evutil_configure_monotonic_time_()
525 base->GetTickCount64_fn = (ev_GetTickCount_func)GetProcAddress(h, "GetTickCount64"); in evutil_configure_monotonic_time_()
526 base->GetTickCount_fn = (ev_GetTickCount_func)GetProcAddress(h, "GetTickCount"); in evutil_configure_monotonic_time_()
529 base->first_tick = base->last_tick_count = evutil_GetTickCount_(base); in evutil_configure_monotonic_time_()
535 base->first_counter = counter.QuadPart; in evutil_configure_monotonic_time_()
536 base->usec_per_count = 1.0e6 / freq.QuadPart; in evutil_configure_monotonic_time_()
537 base->use_performance_counter = 1; in evutil_configure_monotonic_time_()
552 evutil_gettime_monotonic_(struct evutil_monotonic_timer *base, in evutil_gettime_monotonic_() argument
555 ev_uint64_t ticks = evutil_GetTickCount_(base); in evutil_gettime_monotonic_()
556 if (base->use_performance_counter) { in evutil_gettime_monotonic_()
566 (counter.QuadPart - base->first_counter); in evutil_gettime_monotonic_()
567 ticks_elapsed = ticks - base->first_tick; in evutil_gettime_monotonic_()
571 (counter_elapsed * base->usec_per_count); in evutil_gettime_monotonic_()
580base->first_counter = (ev_uint64_t) (counter.QuadPart - counter_usec_elapsed / base->usec_per_coun… in evutil_gettime_monotonic_()
590 adjust_monotonic_time(base, tp); in evutil_gettime_monotonic_()
604 evutil_configure_monotonic_time_(struct evutil_monotonic_timer *base, in evutil_configure_monotonic_time_() argument
607 memset(base, 0, sizeof(*base)); in evutil_configure_monotonic_time_()
612 evutil_gettime_monotonic_(struct evutil_monotonic_timer *base, in evutil_gettime_monotonic_() argument
617 adjust_monotonic_time(base, tp); in evutil_gettime_monotonic_()