|
uLib
User mode C/C++ extended API library for Win32 programmers.
|
Common include; Added types, small "ubiquitous" utilities, et c. More...
#include <NtStatus.h>#include <Windows.h>#include <WindowsX.h>#include <WinError.h>#include <WinNT.h>#include <Limits.h>#include <Float.h>#include <Math.h>#include <ErrNo.h>#include <StdDef.h>#include <StdLib.h>#include <StdIo.h>#include <ConIo.h>#include <CType.h>#include <TChar.h>#include <Lm.h>#include <RichEdit.h>#include <CommCtrl.h>#include <CommDlg.h>#include <CdErr.h>#include <ShlObj.h>#include <ShellApi.h>#include <ShLwApi.h>#include <OleCtl.h>#include <PsApi.h>#include <CrtDbg.h>#include <uLib/NtTypes.h>#include <NtSecApi.h>#include <uLib/Types.h>Go to the source code of this file.
Common include; Added types, small "ubiquitous" utilities, et c.
License: NNOSL Open source license (BSD with commerce conditional clause)
Definition in file Common.h.
Classes | |
| struct | RECTS |
| struct | SIZES |
Macros | |
| #define | NT_SUCCESS(Status) ((NTSTATUS)(Status) >= 0) |
| #define | NT_ERROR(Status) (((ULONG)(Status) >> 30) == 3) |
| #define | BEGIN_EXTERN_C extern "C" { |
| #define | END_EXTERN_C } |
| #define | BEGIN_EXTERN_CPP extern "C++" { |
| #define | END_EXTERN_CPP } |
| #define | BEGIN_NAMESPACE(name) namespace name { |
| #define | END_NAMESPACE(name) } |
| #define | BEGIN_ANONYMOUS namespace { |
| #define | END_ANONYMOUS } |
| #define | DEF_(x) = x |
| #define | _in |
| #define | _out |
| #define | _inout |
| #define | _opt |
| #define | _optin |
| #define | _optout |
| #define | _optio |
| #define | INOUT |
| #define | OPTIN |
| #define | OPTOUT |
| #define | OPTIO |
| #define | TSTR LPTSTR |
| #define | CSTR LPCTSTR |
| #define | PCUCHAR const unsigned char* |
| #define | TCHAR_SIZE sizeof(TCHAR) |
| #define | WCHAR_SIZE sizeof(WCHAR) |
| #define | _TBYTES(cch) (cch * TCHAR_SIZE) |
| #define | _WBYTES(cch) (cch * WCHAR_SIZE) |
| #define | PTR_SIZE sizeof(void*) |
| #define | MK_TWOCC(S2) (*(PTWOCC)(S2)) |
| #define | MK_FOURCC(S4) (*(PFOURCC)(S4)) |
| #define | MK_EIGHTCC(S8) (*(PEIGHTCC)(S8)) |
| #define | __except_execute __except( EXCEPTION_EXECUTE_HANDLER ) |
| #define | FACILITY_ULIB 0x800 |
| #define | MAKE_SOFTEXCEPTION(Severity, Facility, Exception) |
| #define | __assembly __declspec(naked) |
| #define | _byteswap_ushort _bswap16 |
| #define | _byteswap_ulong _bswap32 |
| #define | _byteswap_uint64 _bswap64 |
| #define | DISABLE_BOOLCAST_WARNING __pragma( warning( disable: 4800 )) |
| #define | REENABLE_BOOLCAST_WARNING __pragma( warning( default: 4800 )) |
| #define | __bool_cast_defined |
| #define | IS_WINNT(getver) (DWORD( getver ) < 0x80000000) |
| #define | MAJ_WINVER(getver) LOBYTE(LOWORD( getver )) |
| #define | MIN_WINVER(getver) HIBYTE(LOWORD( getver )) |
| #define | min(a, b) ((a)<(b)?(a):(b)) |
| #define | max(a, b) ((a)>(b)?(a):(b)) |
| #define | dimof(x) (sizeof(x)/sizeof(x[0])) |
| #define | offsetof(stype, field) ((size_t)&reinterpret_cast<char const volatile&>((((stype*)0)->field))) |
| #define | structof(faddr, stype, field) ((stype*)( (ULONG_PTR)(faddr) - (ULONG_PTR)offsetof(stype,field))) |
| #define | fieldsize(stype, field) sizeof(((stype*)0)->field) |
| #define | struct_subsize(stype, field) (offsetof( stype,field ) + fieldsize( stype,field )) |
| #define | LITERAL(type, x) (*((type*)&(x))) |
| #define | UNUSED(x) ((void)&(x)) |
| #define | ZEROMEM(var) memset( &(var),0,sizeof(var) ) |
| #define | YIELD() SleepEx( 0, true ) |
| #define | SWAP_INPLACE(a, b) a ^= b ^= a ^= b |
| #define | ROUND_UP(x, chunk) (((UINT_PTR(x) + (chunk) - 1) / (chunk)) * (chunk)) |
| #define | ROUND_DOWN(x, chunk) ((UINT_PTR(x) / (chunk)) * (chunk)) |
| #define | ROUND_UP2(x, chunk) ((UINT_PTR(x)+((chunk)-1)) & -(chunk)) |
| #define | ROUND_DOWN2(x, chunk) (UINT_PTR(x) & -(chunk)) |
| #define | ALIGN_VALUE(x, aln) (INT_PTR(x) + ((~INT_PTR(x)+1) & (aln-1))) |
| #define | DELETE_ARRAY(A) if (A) { delete[] (A); (A) = NULL; } |
| #define | DELETE_OBJ(Obj) if (Obj) { delete (Obj); (Obj) = NULL; } |
| #define | RELEASE_OBJ(Ifc) if (Ifc) { (Ifc)->Release(); (Ifc) = NULL; } |
| #define | COMTASK_FREE(Obj) if (Obj) { CoTaskMemFree( PVOID(Obj) ); (Obj) = NULL; } |
| #define | _BAD_HANDLE INVALID_HANDLE_VALUE |
| #define | BAD_HANDLE(hnd) ((hnd) == _BAD_HANDLE || !(hnd)) |
| #define | GOOD_HANDLE(hnd) ((hnd) != _BAD_HANDLE && (hnd) != NULL) |
| #define | CHK_HANDLE(hnd) ((hnd) == _BAD_HANDLE ? NULL : (hnd)) |
| #define | _BAD_ATTRIBUTE INVALID_FILE_ATTRIBUTES |
| #define | BITS_SET(bits, x) (((x) & (bits)) == (bits)) |
| #define | BITS_RST(bits, x) (((x) & (bits)) == 0) |
| #define | HAVE_BITS(var, mask) BITS_SET( (mask),(var) ) |
| #define | ALL_BITS 0xFFFFFFFF |
| #define | ALL_BITS64 0xFFFFFFFFFFFFFFFF |
| #define | _BV(bitNr) (UINT_PTR(1) << (bitNr)) |
| #define | PP_NSTR(x) PP_NSTR_(x) |
| #define | PP_NSTR_(x) #x |
| #define | PP_STR(x) _T(#x) |
| #define | CCSTR_LENGTH(s) (dimof(s) - sizeof(*s)) |
| #define | CCH_AVAIL(buf, pz) (dimof(buf) - (CSTR(pz) - CSTR(buf))) |
| #define | _ODS(s) OutputDebugString( s ) |
| #define | _ODSA(s) OutputDebugStringA( s ) |
| #define | _ODSW(s) OutputDebugStringW( s ) |
| #define | _CASSERT(id, expr) typedef char __cassert_##id[ (expr) ? +1 : -1 ] |
| #define | OFFSETOFCLASS(base, derived) ((DWORD)(DWORD_PTR) (STATIC_CAST(base*)( (derived*)8 )) - 8) |
| #define | WINDOWPROC LRESULT CALLBACK |
| #define | DIALOGPROC DRESULT CALLBACK |
| #define | DRESULT BOOL |
| #define | WINHOOKPROC LRESULT CALLBACK |
| #define | THREADPROC DWORD WINAPI |
| #define | EXITPROC void __cdecl |
| #define | GENERIC_RW (GENERIC_READ | GENERIC_WRITE) |
| #define | FILE_SHARE_NONE 0 |
| #define | FILE_SHARE_RW (FILE_SHARE_READ | FILE_SHARE_WRITE) |
| #define | FILE_SHARE_ALL (FILE_SHARE_RW| FILE_SHARE_DELETE) |
| #define | FILE_MAP_RW (FILE_MAP_READ | FILE_MAP_WRITE) |
| #define | KEY_RW (KEY_READ | KEY_WRITE) |
| #define | GENERIC_ACCESS (GENERIC_RW | GENERIC_EXECUTE | GENERIC_ALL) |
| #define | ALL_SECURITY_INFORMATION |
| #define | WINSTA_ALL |
| #define | DESKTOP_ALL |
| #define | WM_FULLSCREEN 0x003A |
| #define | WM_CLIENTSHUTDOWN 0x003B |
| #define | WM_DDEMLEVENT 0x003C |
| #define | WM_CALCSCROLL 0x003F |
| #define | WM_SYNCPAINT 0x0088 |
| #define | WM_UAHDESTROYWINDOW 0x0090 |
| #define | WM_UAHDRAWMENU 0x0091 |
| #define | WM_UAHDRAWMENUITEM 0x0092 |
| #define | WM_UAHINITMENU 0x0093 |
| #define | WM_UAHMEASUREMENUITEM 0x0094 |
| #define | WM_UAHNCPAINTMENUPOPUP 0x0095 |
| #define | WM_UAHUPDATE 0x0096 |
| #define | WM_NCUAHDRAWCAPTION 0x00AE |
| #define | WM_NCUAHDRAWFRAME 0x00AF |
| #define | EM_MSGMAX 0x00DA |
| #define | WM_SYSTIMER 0x0118 |
| #define | WM_GETISHELLBROWSER (WM_USER+7) |
| #define | DOT _T('.') |
| #define | BSLASH _T('\\') |
| #define | SLASH _T('/') |
| #define | SPACE _T(' ') |
| #define | QUOTE _T('"') |
| #define | SQUOTE _T('\'') |
| #define | COLON _T(':') |
| #define | SEMICOLON _T(';') |
| #define | COMMA _T(',') |
| #define | EQUALS _T('=') |
| #define | PERCENT _T('%') |
| #define | HASH _T('#') |
| #define | TAB _T('\t') |
| #define | CR _T('\r') |
| #define | LF _T('\n') |
| #define | DOTDOT _T("..") |
| #define | CRLF _T("\r\n") |
| #define | S_BLANK _T("") |
| #define | _NUL _T('\x00') |
| #define | _SOH '\x01' |
| #define | _STX '\x02' |
| #define | _ETX '\x03' |
| #define | _EOT '\x04' |
| #define | _ENQ '\x05' |
| #define | _ACK '\x06' |
| #define | _BEL '\x07' |
| #define | _BS '\x08' |
| #define | _HT '\x09' |
| #define | _LF '\x0A' |
| #define | _VT '\x0B' |
| #define | _FF '\x0C' |
| #define | _CR '\x0D' |
| #define | _SO '\x0E' |
| #define | _SI '\x0F' |
| #define | _DLE '\x10' |
| #define | _DC1 '\x11' |
| #define | _DC2 '\x12' |
| #define | _DC3 '\x13' |
| #define | _DC4 '\x14' |
| #define | _NAK '\x15' |
| #define | _SYN '\x16' |
| #define | _ETB '\x17' |
| #define | _CAN '\x18' |
| #define | _EM '\x19' |
| #define | _SUB '\x1A' |
| #define | _ESC '\x1B' |
| #define | _FS '\x1C' |
| #define | _GS '\x1D' |
| #define | _RS '\x1E' |
| #define | _US '\x1F' |
| #define | _XON _DC1 |
| #define | _XOFF _DC3 |
| #define | _EOF _SUB |
Typedefs | |
| typedef bool | bool_t |
| typedef const LPCTSTR | CCSTR |
| typedef char * | ASTR |
| typedef const char * | ACSTR |
| typedef const ACSTR | CCASTR |
| typedef UCHAR * | MBSTR |
| typedef const UCHAR * | MBCSTR |
| typedef const MBCSTR | CCMBSTR |
| typedef wchar_t * | WSTR |
| typedef const wchar_t * | WCSTR |
| typedef const WCSTR | CCWSTR |
| typedef unsigned __int64 | UINT64 |
| typedef unsigned __int64 * | PUINT64 |
| typedef signed __int64 | INT64 |
| typedef signed __int64 * | PINT64 |
| typedef unsigned char | BYTE |
| typedef unsigned char * | PBYTE |
| typedef unsigned short | WORD |
| typedef unsigned short * | PWORD |
| typedef unsigned long | DWORD |
| typedef unsigned long * | PDWORD |
| typedef UINT64 | QWORD |
| typedef UINT64 * | PQWORD |
| typedef const HANDLE | CHANDLE |
| typedef const HWND | CHWND |
| typedef WORD * | PTWOCC |
| typedef WORD | TWOCC |
| typedef DWORD * | PFOURCC |
| typedef DWORD | FOURCC |
| typedef QWORD * | PEIGHTCC |
| typedef QWORD | EIGHTCC |
| typedef const SIZE * | LPCSIZE |
| typedef struct _RECTS * | PRECTS |
| typedef struct _RECTS * | LPRECTS |
| typedef const RECTS * | LPCRECTS |
| typedef struct _SIZES * | PSIZES |
| typedef struct _SIZES * | LPSIZES |
| typedef const SIZES * | LPCSIZES |
Functions | |
| UINT16 __cdecl | _bswap16 (UINT16 Val) |
| UINT32 __cdecl | _bswap32 (UINT32 Val) |
| UINT64 __cdecl | _bswap64 (UINT64 Val) |
| BYTE __stdcall | _rol8 (BYTE value, BYTE bits) |
| WORD __stdcall | _rol16 (WORD value, BYTE bits) |
| DWORD __stdcall | _rol32 (DWORD value, BYTE bits) |
| QWORD __stdcall | _rol64 (QWORD value, BYTE bits) |
| BYTE __stdcall | _ror8 (BYTE value, BYTE bits) |
| WORD __stdcall | _ror16 (WORD value, BYTE bits) |
| DWORD __stdcall | _ror32 (DWORD value, BYTE bits) |
| QWORD __stdcall | _ror64 (QWORD value, BYTE bits) |
| bool __forceinline | bool_cast (BOOL B52) |
| bool | IsWinVer (BYTE vMajor, BYTE vMinor, bool WinNT=true) |
| bool | IsWin7 () |
| bool | IsWinVista () |
| bool | IsWinXP () |
| bool | IsWin2000 () |
| bool | IsWinNT () |
| bool | IsWin98 () |
| bool | IsWin95 () |
| bool | IsWin64Bit () |
| bool | IsWow64 () |
| void | GetWinSystemInfo (SYSTEM_INFO *si) |
| long | map (long x, long xMin, long xMax, long toMin, long toMax) |
| long | constrain (long x, long lo, long hi) |
| short | random (short iMin, short iMax) |
| void | randomize () |
| long | runningAvg (long Avg, long X, unsigned int Period) |
| ulong | ipow2 (ushort expo) |
| uint64 | ipow2x (ushort expo) |
| ushort | ilog2 (ulong X) |
| ushort | ilog2x (uint64 X) |
| ushort | ilog10 (ulong X) |
| ushort | ilog10x (uint64 X) |
| long double | _root (long double base, long double X) |
| long double | _log (long double base, long double X) |
| double | _round (double x, unsigned char ndecimals) |
| bool | _isprime (unsigned long X) |
| long double | EngUnits (long double Value, int *pExpo) |
| template<typename T > | |
| T | map_ (T x, T xMin, T xMax, T toMin, T toMax) |
| template<typename T > | |
| T | constrain_ (T x, T lo, T hi) |
| template<typename T > | |
| T | min_ (T a, T b) |
| template<typename T > | |
| T | max_ (T a, T b) |
| template<typename T > | |
| T | runningAvg_ (T Avg, T X, unsigned int Period) |
| template<typename T > | |
| T | mulDiv_ (const T X, const T Mu, const T Dv) |
Variables | |
| HINSTANCE | hInstance |
| HWND | hMainWnd |
| HWND | hCurrDlg |
| HACCEL | hMainAcc |
| HWND | hMdiClient |
| SECURITY_ATTRIBUTES | DefSec |
| SECURITY_DESCRIPTOR | DefSecDesc |