From 8f5e42760d6b3d0910891f4fd311b82f12968c29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thea=20Sch=C3=B6bl?= Date: Tue, 19 Jun 2018 22:48:41 +0200 Subject: [PATCH] Create main.cpp --- main.cpp | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 main.cpp diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..34b440c --- /dev/null +++ b/main.cpp @@ -0,0 +1,70 @@ +extern "C" { +#include "DirectOutput.h" +} +#include +#include + +DWORD LED_FIRE = 0; +DWORD LED_FIRE_A_RED = 1; +DWORD LED_FIRE_A_GREEN = 2; +DWORD LED_FIRE_B_RED = 3; +DWORD LED_FIRE_B_GREEN = 4; +DWORD LED_FIRE_D_RED = 5; +DWORD LED_FIRE_D_GREEN = 6; +DWORD LED_FIRE_E_RED = 7; +DWORD LED_FIRE_E_GREEN = 8; +DWORD LED_TOGGLE_1_2_RED = 9; +DWORD LED_TOGGLE_1_2_GREEN = 10; +DWORD LED_TOGGLE_3_4_RED = 11; +DWORD LED_TOGGLE_3_4_GREEN = 12; +DWORD LED_TOGGLE_5_6_RED = 13; +DWORD LED_TOGGLE_5_6_GREEN = 14; +DWORD LED_POV_2_RED = 15; +DWORD LED_POV_2_GREEN = 16; +DWORD LED_CLUTCH_RED = 17; +DWORD LED_CLUTCH_GREEN = 18; +DWORD LED_THROTTLE = 19; + +DWORD MFD_STRING_TOP = 0; +DWORD MFD_STRING_MIDDLE = 1; +DWORD MFD_STRING_BOTTOM = 2; + +std::vector devices; + +void __stdcall DirectOutput_Device_Callback(void* hDevice, bool bAdded, void* pvContext) { + if (bAdded) { + devices.push_back(hDevice); + } + else { + + } +} + +void __stdcall DirectOutput_Enumerate_Callback(void* hDevice, void* pvContext) { + devices.push_back(hDevice); +} + +int main() +{ + const wchar_t * name = L"TestApp"; + DirectOutput_Initialize(name); + DirectOutput_RegisterDeviceCallback(*DirectOutput_Device_Callback, nullptr); + DirectOutput_Enumerate(*DirectOutput_Enumerate_Callback, nullptr); + + DWORD dwPage = 1; + const wchar_t * pageDebugName = L"TestPage"; + DirectOutput_AddPage(devices[0], dwPage, pageDebugName, FLAG_SET_AS_ACTIVE); + + DirectOutput_SetLed(devices[0], dwPage, LED_FIRE_A_RED, 1); + DirectOutput_SetLed(devices[0], dwPage, LED_FIRE_A_GREEN, 1); + + const wchar_t * value = L"Test App"; + DirectOutput_SetString(devices[0], dwPage, 1, 8, value); + + int x; + std::cin >> x; + + DirectOutput_Deinitialize(); + + return 0; +}