/* TMTMod.h
Provides Win32 API veneers for TMT module
by N. Douglas
Started: 30-11-1996
Last updated: 30-12-1996 version 0.10

Note that parts of this API is (C) to Microsoft Corp.
*/

#ifndef _TMTMod_h
#define _TMTMod_h

#define Tornado_Initialise	0xc0044
#define Tornado_Closedown	0xc0045
#define Tornado_Poll		0xc0046
#define Tornado_RedrawWindow 	0xc0047
#define Tornado_GetRectangle	0xc0048
#define Wimp2_OpenTemplate	0xc0049
#define Wimp2_CloseTemplate	0xc004a
#define Tornado_NeedReset	0xc004B
#define Tornado_ReportError	0xc004C

#define MSG_PASSON 0
#define MSG_HANDLED 1

#define TRUE 1
#define FALSE 0
#define BOOL unsigned

typedef BOOL (*function)(int *);


typedef struct SECURITY_ATTRIBUTES
{
  /* Dunno what this is yet! */
  int n;

} SECURITY_ATTRIBUTES;

typedef int HANDLE;
typedef SECURITY_ATTRIBUTES *LPSECURITY_ATTRIBUTES;
typedef int DWORD;
typedef int *LPTHREAD_START_ROUTINE;
typedef int LPVOID;
typedef DWORD *LPDWORD;

extern HANDLE CreateThread(

    LPSECURITY_ATTRIBUTES,	/* address of thread security attributes */
    DWORD,			/* initial thread stack size, in bytes */
    LPTHREAD_START_ROUTINE,	/* address of thread function */
    LPVOID,			/* argument for new thread */
    DWORD,			/* creation flags */
    LPDWORD			/* address of returned thread ID */
   );

extern void ExitThread(

    DWORD			/* exit code for this thread */
   );

extern BOOL TerminateThread(

    HANDLE,			/* handle to the thread */
    DWORD	 		/* exit code for the thread */
   );

extern DWORD GetLastError(void);

#endif
