summaryrefslogtreecommitdiffhomepage
path: root/ftnoir_protocol_vjoy
diff options
context:
space:
mode:
Diffstat (limited to 'ftnoir_protocol_vjoy')
-rw-r--r--ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.cpp4
-rw-r--r--ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h7
2 files changed, 10 insertions, 1 deletions
diff --git a/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.cpp b/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.cpp
index b636ffd42..63f756859 100644
--- a/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.cpp
+++ b/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.cpp
@@ -13,7 +13,9 @@ FTNoIR_Protocol::~FTNoIR_Protocol()
}
void FTNoIR_Protocol::pose( const double *headpose ) {
-#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
+#ifdef __GNUC__
+# pragma GCC diagnostic ignored "-Wmissing-field-initializers"
+#endif
JOYSTICK_STATE state[2] = { 0 };
state[0].POV = (4 << 12) | (4 << 8) | (4 << 4) | 4;
diff --git a/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h b/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h
index 73496fba3..a9e8ed6e0 100644
--- a/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h
+++ b/ftnoir_protocol_vjoy/ftnoir_protocol_vjoy.h
@@ -96,6 +96,13 @@ typedef struct _JOYSTICK_STATE
UINT32 Buttons; // 32 Buttons
} JOYSTICK_STATE, * PJOYSTICK_STATE;
+#ifndef _MSC_VER
EXTERN_C BOOL __stdcall VJoy_Initialize(PCHAR name, PCHAR serial);
EXTERN_C VOID __stdcall VJoy_Shutdown();
EXTERN_C BOOL __stdcall VJoy_UpdateJoyState(int id, PJOYSTICK_STATE pJoyState);
+#else
+#define VJOY_API __declspec(dllimport)
+VJOY_API BOOL __stdcall VJoy_Initialize(PCHAR name, PCHAR serial);
+VJOY_API VOID __stdcall VJoy_Shutdown();
+VJOY_API BOOL __stdcall VJoy_UpdateJoyState(int id, PJOYSTICK_STATE pJoyState);
+#endif