GeNN  4.0.0
GPU enhanced Neuronal Networks (GeNN)
WinApi.h
Go to the documentation of this file.
1 #pragma once
2 
3 #ifdef _WIN32
4 namespace plog
5 {
6  typedef unsigned long DWORD;
7  typedef unsigned short WORD;
8  typedef unsigned int UINT;
9  typedef int BOOL;
10  typedef long LSTATUS;
11  typedef char* LPSTR;
12  typedef wchar_t* LPWSTR;
13  typedef const char* LPCSTR;
14  typedef const wchar_t* LPCWSTR;
15  typedef void* HANDLE;
16  typedef void* HKEY;
17  typedef size_t ULONG_PTR;
18 
19  struct CRITICAL_SECTION
20  {
21  void* DebugInfo;
22  long LockCount;
23  long RecursionCount;
24  HANDLE OwningThread;
25  HANDLE LockSemaphore;
26  ULONG_PTR SpinCount;
27  };
28 
29  struct COORD
30  {
31  short X;
32  short Y;
33  };
34 
35  struct SMALL_RECT
36  {
37  short Left;
38  short Top;
39  short Right;
40  short Bottom;
41  };
42 
43  struct CONSOLE_SCREEN_BUFFER_INFO
44  {
45  COORD dwSize;
46  COORD dwCursorPosition;
47  WORD wAttributes;
48  SMALL_RECT srWindow;
49  COORD dwMaximumWindowSize;
50  };
51 
52  namespace codePage
53  {
54  const UINT kActive = 0;
55  const UINT kUTF8 = 65001;
56  }
57 
58  namespace eventLog
59  {
60  const WORD kErrorType = 0x0001;
61  const WORD kWarningType = 0x0002;
62  const WORD kInformationType = 0x0004;
63  }
64 
65  namespace hkey
66  {
67  const HKEY kLocalMachine = reinterpret_cast<HKEY>(static_cast<ULONG_PTR>(0x80000002));
68  }
69 
70  namespace regSam
71  {
72  const DWORD kQueryValue = 0x0001;
73  const DWORD kSetValue = 0x0002;
74  }
75 
76  namespace regType
77  {
78  const DWORD kExpandSz = 2;
79  const DWORD kDword = 4;
80  }
81 
82  namespace stdHandle
83  {
84  const DWORD kOutput = static_cast<DWORD>(-11);
85  }
86 
87  namespace foreground
88  {
89  const WORD kBlue = 0x0001;
90  const WORD kGreen = 0x0002;
91  const WORD kRed = 0x0004;
92  const WORD kIntensity = 0x0008;
93  }
94 
95  namespace background
96  {
97  const WORD kBlue = 0x0010;
98  const WORD kGreen = 0x0020;
99  const WORD kRed = 0x0040;
100  const WORD kIntensity = 0x0080;
101  }
102 
103  extern "C"
104  {
105  __declspec(dllimport) int __stdcall MultiByteToWideChar(UINT CodePage, DWORD dwFlags, LPCSTR lpMultiByteStr, int cbMultiByte, LPWSTR lpWideCharStr, int cchWideChar);
106  __declspec(dllimport) int __stdcall WideCharToMultiByte(UINT CodePage, DWORD dwFlags, LPCWSTR lpWideCharStr, int cchWideChar, LPSTR lpMultiByteStr, int cbMultiByte, const char* lpDefaultChar, BOOL* lpUsedDefaultChar);
107 
108  __declspec(dllimport) DWORD __stdcall GetCurrentThreadId();
109 
110  __declspec(dllimport) BOOL __stdcall MoveFileW(LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName);
111 
112  __declspec(dllimport) void __stdcall InitializeCriticalSection(CRITICAL_SECTION* lpCriticalSection);
113  __declspec(dllimport) void __stdcall EnterCriticalSection(CRITICAL_SECTION* lpCriticalSection);
114  __declspec(dllimport) void __stdcall LeaveCriticalSection(CRITICAL_SECTION* lpCriticalSection);
115  __declspec(dllimport) void __stdcall DeleteCriticalSection(CRITICAL_SECTION* lpCriticalSection);
116 
117  __declspec(dllimport) HANDLE __stdcall RegisterEventSourceW(LPCWSTR lpUNCServerName, LPCWSTR lpSourceName);
118  __declspec(dllimport) BOOL __stdcall DeregisterEventSource(HANDLE hEventLog);
119  __declspec(dllimport) BOOL __stdcall ReportEventW(HANDLE hEventLog, WORD wType, WORD wCategory, DWORD dwEventID, void* lpUserSid, WORD wNumStrings, DWORD dwDataSize, LPCWSTR* lpStrings, void* lpRawData);
120 
121  __declspec(dllimport) LSTATUS __stdcall RegCreateKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD Reserved, LPWSTR lpClass, DWORD dwOptions, DWORD samDesired, void* lpSecurityAttributes, HKEY* phkResult, DWORD* lpdwDisposition);
122  __declspec(dllimport) LSTATUS __stdcall RegSetValueExW(HKEY hKey, LPCWSTR lpValueName, DWORD Reserved, DWORD dwType, const void* lpData, DWORD cbData);
123  __declspec(dllimport) LSTATUS __stdcall RegCloseKey(HKEY hKey);
124  __declspec(dllimport) LSTATUS __stdcall RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, DWORD samDesired, HKEY* phkResult);
125  __declspec(dllimport) LSTATUS __stdcall RegDeleteKeyW(HKEY hKey, LPCWSTR lpSubKey);
126 
127  __declspec(dllimport) HANDLE __stdcall GetStdHandle(DWORD nStdHandle);
128 
129  __declspec(dllimport) BOOL __stdcall WriteConsoleW(HANDLE hConsoleOutput, const void* lpBuffer, DWORD nNumberOfCharsToWrite, DWORD* lpNumberOfCharsWritten, void* lpReserved);
130  __declspec(dllimport) BOOL __stdcall GetConsoleScreenBufferInfo(HANDLE hConsoleOutput, CONSOLE_SCREEN_BUFFER_INFO* lpConsoleScreenBufferInfo);
131  __declspec(dllimport) BOOL __stdcall SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttributes);
132 
133  __declspec(dllimport) void __stdcall OutputDebugStringW(LPCWSTR lpOutputString);
134  }
135 }
136 #endif // _WIN32
Definition: AndroidAppender.h:5