[PD-cvs] externals/unauthorized/scratcher~ timeval.h, NONE, 1.1 scratcher~.c, 1.10, 1.11

Hans-Christoph Steiner eighthave at users.sourceforge.net
Sun Dec 18 19:55:11 CET 2005


Update of /cvsroot/pure-data/externals/unauthorized/scratcher~
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19030/scratcher~

Modified Files:
	scratcher~.c 
Added Files:
	timeval.h 
Log Message:
lots of MinGW fixes for RC6

Index: scratcher~.c
===================================================================
RCS file: /cvsroot/pure-data/externals/unauthorized/scratcher~/scratcher~.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** scratcher~.c	19 Apr 2005 00:17:36 -0000	1.10
--- scratcher~.c	18 Dec 2005 18:55:09 -0000	1.11
***************
*** 49,60 ****
  #include <time.h>
  #include <sys/time.h>
! #ifdef UNIX
  #include <unistd.h>
! #endif
! #ifdef NT
! #define M_PI 3.14159265358979323846
! #endif
  #include <math.h>
  
  #include "m_pd.h"
  #include "m_imp.h"
--- 49,64 ----
  #include <time.h>
  #include <sys/time.h>
! #ifdef _WIN32
! #include <io.h>
! #include "timeval.h"
! #else
  #include <unistd.h>
! #endif /* _WIN32 */
  #include <math.h>
  
+ #ifndef M_PI
+ #define M_PI 3.14159265358979323846
+ #endif /* not M_PI */
+ 
  #include "m_pd.h"
  #include "m_imp.h"

--- NEW FILE: timeval.h ---
/*
 * timeval.h    1.0 01/12/19
 *
 * Defines gettimeofday, timeval, etc. for Win32
 *
 * By Wu Yongwei
 *
 */

#ifndef _TIMEVAL_H
#define _TIMEVAL_H

#ifdef _WIN32

#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <time.h>

#ifndef __GNUC__
#define EPOCHFILETIME (116444736000000000i64)
#else
#define EPOCHFILETIME (116444736000000000LL)
#endif /* not __GNUC__ */

#if 0
struct timeval {
    long tv_sec;        /* seconds */
    long tv_usec;  /* microseconds */
};
#endif /* 0 */

struct timezone {
    int tz_minuteswest; /* minutes W of Greenwich */
    int tz_dsttime;     /* type of dst correction */
};

__inline int gettimeofday(struct timeval *tv, struct timezone *tz)
{
    FILETIME        ft;
    LARGE_INTEGER   li;
    __int64         t;
    static int      tzflag;

    if (tv)
    {
        GetSystemTimeAsFileTime(&ft);
        li.LowPart  = ft.dwLowDateTime;
        li.HighPart = ft.dwHighDateTime;
        t  = li.QuadPart;       /* In 100-nanosecond intervals */
        t -= EPOCHFILETIME;     /* Offset to the Epoch time */
        t /= 10;                /* In microseconds */
        tv->tv_sec  = (long)(t / 1000000);
        tv->tv_usec = (long)(t % 1000000);
    }

    if (tz)
    {
        if (!tzflag)
        {
            _tzset();
            tzflag++;
        }
        tz->tz_minuteswest = _timezone / 60;
        tz->tz_dsttime = _daylight;
    }

    return 0;
}

#else  /* _WIN32 */

#include <sys/time.h>

#endif /* _WIN32 */

#endif /* _TIMEVAL_H */





More information about the Pd-cvs mailing list