/////////////////////////////////////////////////////////////////////
// This open-source software sample is offered free of charge and without guarantee.
// Polhemus accepts no responsibility or liability for any use of this code.
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
// Polhemus Inc., www.polhemus.com
// © 2002 Polhemus Inc., All Rights Reserved
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
//
//  Filename:           $Workfile: PTTypeDefs.h $
//
//  Project Name:       Polhemus Tracker Command Interface API 
//
//  Original Author:    S. Gagnon
//
//  Description:        Custom Data Type Classes
//
//  VSS $Header: /Viper/VPCmdIF/VPCmdIF/PTTypeDefs.h 2     9/03/19 4:08p Suzanne $  
//
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
///@cond
#ifndef _PTTYPEDEFS_H_
#define _PTTYPEDEFS_H_
#include <string>


#ifndef _WINDOWS_
typedef const char * LPCSTR;
typedef const wchar_t * LPCWSTR;
typedef char * LPSTR;
typedef wchar_t * LPWSTR;
typedef char CHAR;
typedef wchar_t WCHAR;
#define MAX_PATH 260
#endif

#ifndef __TCHAR_DEFINED

#ifdef _UNICODE
#include <wchar.h>
#define tstringbuf      std::wstringbuf
#define tstring         std::wstring
#define _stprintf_s     swprintf_s
#define _sntprintf_s    snwprintf_s
#define _ftprintf       fwprintf
#define _tcslen         wcslen
#define _tcscpy_s       wcscpy_s
#define _tcsncpy_s		wcsncpy_s
#define _tcsncpy        wcsncpy
#define _tfsopen        _wfsopen
#define _vsntprintf_s   _vsnwprintf_s
#define _tcsftime       wcsftime
#define _tcsftime_l     _wcsftime_l
#define _stscanf_s      swscanf_s
#define _stscanf_s_l    _swscanf_s_l
#define _fputts         fputws
typedef LPCWSTR         LPCTSTR;
typedef LPWSTR          LPTSTR;
typedef wchar_t         TCHAR;
#define _T(x)	L ## x
#else
#define tstringbuf      std::stringbuf
#define tstring         std::string
#define _stprintf_s     sprintf_s
#define _ftprintf       fprintf
#define _sntprintf_s    _snprintf_s
#define _tcslen         strlen
#define _tcscpy_s       strcpy_s
#define _tcsncpy        strncpy
#define _tcsncpy_s      strncpy_s
#define _tfsopen        _fsopen
#define _vsntprintf_s   _vsnprintf_s
#define _tcsftime       strftime
#define _tcsftime_l     _strftime_l
#define _stscanf_s      sscanf_s
#define _stscanf_s_l    _sscanf_s_l
#define _fputts         fputs
typedef LPCSTR          LPCTSTR;
typedef LPSTR           LPTSTR;
typedef char            TCHAR;
#define _T(x)  x
#endif
#endif



/////////////////////////////////////////////////////////////////////
// END $Workfile: PTTypeDefs.h $
/////////////////////////////////////////////////////////////////////
#endif // _PTTYPEDEFS_H_
///@endcond