#ifndef _CLOCKSTUFF_H
#define _CLOCKSTUFF_H
#include <time.h>
#include <sys\timeb.h>
#include "ntp_fp.h"
#include "ntp_syslog.h"
void init_winnt_time(void);
void reset_winnt_time(void);
void lock_thread_to_processor(HANDLE);
/* 100ns intervals between 1/1/1601 and 1/1/1970 as reported by
* SystemTimeToFileTime()
*/
#define FILETIME_1970 0x019db1ded53e8000
#define HECTONANOSECONDS 10000000
/*
* Multimedia Timer
*/
void set_mm_timer(int);
enum {
MM_TIMER_LORES,
MM_TIMER_HIRES
};
/*
* Optional callback from libntp ntp_set_tod() to Windows ntpd code
* in nt_clockstuff that needs to know. Optional because other
* libntp clients like ntpdate don't use it.
*/
typedef void (*time_stepped_callback)(void);
extern time_stepped_callback step_callback;
/*
* get_sys_time_as_filetime is a function pointer to
* either GetSystemTimeAsFileTime provided by Windows
* or ntpd's interpolating replacement.
*/
typedef void (WINAPI *PGSTAFT)(LPFILETIME pft);
extern PGSTAFT get_sys_time_as_filetime;
void lock_thread_to_processor(HANDLE);
#ifdef HAVE_PPSAPI
/*
* ntp_timestamp_from_counter provides an interface for
* serialpps.sys counterstamps to be converted to
* interpolated timestamps.
*/
extern void ntp_timestamp_from_counter(l_fp *, ULONGLONG, ULONGLONG);
#endif
#endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>