You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
3.1 KiB
98 lines
3.1 KiB
/*----------------------------------------------------------------------------
|
|
|
|
NAME
|
|
Utils.h
|
|
|
|
PURPOSE
|
|
Defines for the general-purpose functions for the WinTab demos.
|
|
|
|
COPYRIGHT
|
|
Copyright (c) Wacom Company, Ltd. 2014 All Rights Reserved
|
|
All rights reserved.
|
|
|
|
The text and information contained in this file may be freely used,
|
|
copied, or distributed without compensation or licensing restrictions.
|
|
|
|
---------------------------------------------------------------------------- */
|
|
#pragma once
|
|
|
|
#include <windows.h>
|
|
#include <stdio.h>
|
|
#include <assert.h>
|
|
#include <stdarg.h>
|
|
|
|
#include "wintab.h" // NOTE: get from wactab header package
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
#define WACOM_DEBUG
|
|
|
|
// Ignore warnings about using unsafe string functions.
|
|
#pragma warning( disable : 4996 )
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
// Function pointers to Wintab functions exported from wintab32.dll.
|
|
typedef UINT ( API * WTINFOW ) ( UINT, UINT, LPVOID );
|
|
typedef UINT(API * WTINFOA) (UINT, UINT, LPVOID);
|
|
typedef HCTX ( API * WTOPENW )( HWND, LPLOGCONTEXTW, BOOL );
|
|
typedef BOOL ( API * WTGETW ) ( HCTX, LPLOGCONTEXT );
|
|
typedef BOOL ( API * WTSETW ) ( HCTX, LPLOGCONTEXT );
|
|
typedef BOOL ( API * WTCLOSE ) ( HCTX );
|
|
typedef BOOL ( API * WTENABLE ) ( HCTX, BOOL );
|
|
typedef BOOL ( API * WTPACKET ) ( HCTX, UINT, LPVOID );
|
|
typedef BOOL ( API * WTOVERLAP ) ( HCTX, BOOL );
|
|
typedef BOOL ( API * WTSAVE ) ( HCTX, LPVOID );
|
|
typedef BOOL ( API * WTCONFIG ) ( HCTX, HWND );
|
|
typedef HCTX ( API * WTRESTORE ) ( HWND, LPVOID, BOOL );
|
|
typedef BOOL ( API * WTEXTSET ) ( HCTX, UINT, LPVOID );
|
|
typedef BOOL ( API * WTEXTGET ) ( HCTX, UINT, LPVOID );
|
|
typedef BOOL ( API * WTQUEUESIZESET ) ( HCTX, int );
|
|
typedef BOOL(API * WTQUEUESIZEGET) (HCTX);
|
|
typedef int ( API * WTDATAPEEK ) ( HCTX, UINT, UINT, int, LPVOID, LPINT);
|
|
typedef int ( API * WTPACKETSGET ) (HCTX, int, LPVOID);
|
|
|
|
// TODO - add more wintab32 function defs as needed
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
// Loaded Wintab32 API functions.
|
|
extern HINSTANCE ghWintab;
|
|
|
|
extern WTINFOW gpWTInfoW;
|
|
extern WTINFOA gpWTInfoA;
|
|
extern WTOPENW gpWTOpenW;
|
|
extern WTGETW gpWTGetW;
|
|
extern WTSETW gpWTSetW;
|
|
extern WTCLOSE gpWTClose;
|
|
extern WTPACKET gpWTPacket;
|
|
extern WTENABLE gpWTEnable;
|
|
extern WTOVERLAP gpWTOverlap;
|
|
extern WTSAVE gpWTSave;
|
|
extern WTCONFIG gpWTConfig;
|
|
extern WTRESTORE gpWTRestore;
|
|
extern WTEXTSET gpWTExtSet;
|
|
extern WTEXTGET gpWTExtGet;
|
|
extern WTQUEUESIZESET gpWTQueueSizeSet;
|
|
extern WTQUEUESIZEGET gpWTQueueSizeGet;
|
|
extern WTDATAPEEK gpWTDataPeek;
|
|
extern WTPACKETSGET gpWTPacketsGet;
|
|
|
|
// TODO - add more wintab32 function pointers as needed
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
BOOL LoadWintab( void );
|
|
void UnloadWintab( void );
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
#ifdef WACOM_DEBUG
|
|
|
|
void WacomTrace( char *lpszFormat, ...);
|
|
|
|
#define WACOM_ASSERT( x ) assert( x )
|
|
#define WACOM_TRACE(...) WacomTrace(__VA_ARGS__)
|
|
#else
|
|
#define WACOM_TRACE(...)
|
|
#define WACOM_ASSERT( x )
|
|
|
|
#endif // WACOM_DEBUG
|
|
|