view dds.h @ 265:da38cbbc7ec8

Add DDS clients test code To verify the portabiolity of the clients code and to make testing easier the test code is independent of the CVI environment and runtime.
author Daniele Nicolodi <daniele.nicolodi@obspm.fr>
date Sun, 21 Jun 2015 14:44:33 +0200
parents 5296f3bcd160
children
line wrap: on
line source

#ifndef __FXANALYSE_DDS_H__
#define __FXANALYSE_DDS_H__

typedef long long int64;
typedef unsigned long long uint64;

static inline uint64 ftw(double clock, double freq)
{
	uint64 ftw = freq * ((double)(1ULL << 48) / clock);
	return ftw;
}

static inline double freq(double clock, uint64 ftw)
{
	double freq = (double)ftw * (clock / (double)(1ULL << 48));
	return freq;
}

static inline int strtouint64(const char *str, uint64 *v)
{
	char *end;
	*v = strtoull(str, &end, 0);
	if (*end != '\0')
		return -1;
	return 0;
}

#endif