summaryrefslogtreecommitdiffhomepage
path: root/proto-vjoy
diff options
context:
space:
mode:
Diffstat (limited to 'proto-vjoy')
-rw-r--r--proto-vjoy/CMakeLists.txt23
-rw-r--r--proto-vjoy/ftnoir_protocol_vjoy.cpp33
-rw-r--r--proto-vjoy/ftnoir_protocol_vjoy.h92
-rw-r--r--proto-vjoy/ftnoir_protocol_vjoy_dialog.cpp22
-rw-r--r--proto-vjoy/ftnoir_vjoy_controls.ui119
-rw-r--r--proto-vjoy/images/vjoy.pngbin694 -> 0 bytes
-rw-r--r--proto-vjoy/vjoy-protocol.qrc5
-rw-r--r--proto-vjoy/vjoy.def5
8 files changed, 0 insertions, 299 deletions
diff --git a/proto-vjoy/CMakeLists.txt b/proto-vjoy/CMakeLists.txt
deleted file mode 100644
index 50b23e47..00000000
--- a/proto-vjoy/CMakeLists.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-if(WIN32)
- set(SDK_VJOY "" CACHE PATH "VJoy SDK path")
- if(SDK_VJOY)
- if(opentrack-64bit)
- set(arch 64)
- else()
- set(arch 32)
- endif()
- set(lib ${SDK_VJOY}/VJoy${arch}.dll)
- if (MSVC)
- set(implib "${SDK_VJOY}/VJoy${arch}.lib")
- else()
- set(implib "${lib}")
- endif()
- if(CMAKE_COMPILER_IS_GNUCXX)
- set(link "-Wl,--enable-stdcall-fixup")
- endif()
- opentrack_boilerplate(opentrack-proto-vjoy LINK "${link}")
- target_link_libraries(opentrack-proto-vjoy "${implib}")
- target_include_directories(opentrack-proto-vjoy SYSTEM PUBLIC ${SDK_VJOY})
- install(FILES "${lib}" DESTINATION ${opentrack-hier-pfx} RENAME "VJoy.dll")
- endif()
-endif()
diff --git a/proto-vjoy/ftnoir_protocol_vjoy.cpp b/proto-vjoy/ftnoir_protocol_vjoy.cpp
deleted file mode 100644
index 24148c63..00000000
--- a/proto-vjoy/ftnoir_protocol_vjoy.cpp
+++ /dev/null
@@ -1,33 +0,0 @@
-#include "ftnoir_protocol_vjoy.h"
-#include "opentrack/plugin-api.hpp"
-
-FTNoIR_Protocol::FTNoIR_Protocol()
-{
- static char meh[1] = {0};
- VJoy_Initialize(meh, meh);
-}
-
-FTNoIR_Protocol::~FTNoIR_Protocol()
-{
- VJoy_Shutdown();
-}
-
-void FTNoIR_Protocol::pose( const double *headpose ) {
-#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;
-
- state[0].XAxis = std::min<int>(VJOY_AXIS_MAX, std::max<int>(VJOY_AXIS_MIN, headpose[Yaw] * VJOY_AXIS_MAX / 180.0));
- state[0].YAxis = std::min<int>(VJOY_AXIS_MAX, std::max<int>(VJOY_AXIS_MIN, headpose[Pitch] * VJOY_AXIS_MAX / 180.0));
- state[0].ZAxis = std::min<int>(VJOY_AXIS_MAX, std::max<int>(VJOY_AXIS_MIN, headpose[Roll] * VJOY_AXIS_MAX / 180.0));
- state[0].XRotation = std::min<int>(VJOY_AXIS_MAX, std::max<int>(VJOY_AXIS_MIN, headpose[TX] * VJOY_AXIS_MAX / 100.0));
- state[0].YRotation = std::min<int>(VJOY_AXIS_MAX, std::max<int>(VJOY_AXIS_MIN, headpose[TY] * VJOY_AXIS_MAX / 100.0));
- state[0].ZRotation = std::min<int>(VJOY_AXIS_MAX, std::max<int>(VJOY_AXIS_MIN, headpose[TZ] * VJOY_AXIS_MAX / 100.0));
-
- VJoy_UpdateJoyState(0, state);
-}
-
-OPENTRACK_DECLARE_PROTOCOL(FTNoIR_Protocol, VJoyControls, FTNoIR_ProtocolDll)
diff --git a/proto-vjoy/ftnoir_protocol_vjoy.h b/proto-vjoy/ftnoir_protocol_vjoy.h
deleted file mode 100644
index 8d75a3e0..00000000
--- a/proto-vjoy/ftnoir_protocol_vjoy.h
+++ /dev/null
@@ -1,92 +0,0 @@
-/* Homepage http://facetracknoir.sourceforge.net/home/default.htm *
- * *
- * ISC License (ISC) *
- * *
- * Copyright (c) 2015, Wim Vriend *
- * *
- * Permission to use, copy, modify, and/or distribute this software for any *
- * purpose with or without fee is hereby granted, provided that the above *
- * copyright notice and this permission notice appear in all copies. *
- */
-#pragma once
-#include "ui_ftnoir_vjoy_controls.h"
-#include <cmath>
-#include "opentrack/plugin-api.hpp"
-
-#define FT_PROGRAMID "FT_ProgramID"
-
-class FTNoIR_Protocol : public IProtocol
-{
-public:
- FTNoIR_Protocol();
- ~FTNoIR_Protocol() override;
- bool correct() {
- return true;
- }
- void pose( const double *headpose );
- QString game_name() {
- return "Virtual joystick";
- }
-private:
-};
-
-// Widget that has controls for FTNoIR protocol client-settings.
-class VJoyControls: public IProtocolDialog
-{
- Q_OBJECT
-public:
-
- explicit VJoyControls();
- void register_protocol(IProtocol *) {}
- void unregister_protocol() {}
-
-private:
- Ui::UICVJoyControls ui;
- void save();
-
-private slots:
- void doOK();
- void doCancel();
-};
-
-class FTNoIR_ProtocolDll : public Metadata
-{
-public:
- QString name() { return QString("Joystick emulation -- VJoy"); }
- QIcon icon() { return QIcon(":/images/vjoy.png"); }
-};
-
-#define VJOY_AXIS_MIN -32768
-#define VJOY_AXIS_NIL 0
-#define VJOY_AXIS_MAX 32767
-
-#include <windows.h>
-
-#include <pshpack1.h>
-
-typedef struct _JOYSTICK_STATE
-{
- UCHAR ReportId; // Report Id
- SHORT XAxis; // X Axis
- SHORT YAxis; // Y Axis
- SHORT ZAxis; // Z Axis
- SHORT XRotation; // X Rotation
- SHORT YRotation; // Y Rotation
- SHORT ZRotation; // Z Rotation
- SHORT Slider; // Slider
- SHORT Dial; // Dial
- USHORT POV; // POV
- UINT32 Buttons; // 32 Buttons
-} JOYSTICK_STATE, * PJOYSTICK_STATE;
-
-#ifndef _MSC_VER
-#define VJOY_API extern "C"
-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);
-#else
-#define VJOY_API extern "C"
-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
diff --git a/proto-vjoy/ftnoir_protocol_vjoy_dialog.cpp b/proto-vjoy/ftnoir_protocol_vjoy_dialog.cpp
deleted file mode 100644
index f02dac06..00000000
--- a/proto-vjoy/ftnoir_protocol_vjoy_dialog.cpp
+++ /dev/null
@@ -1,22 +0,0 @@
-#include "ftnoir_protocol_vjoy.h"
-#include "opentrack/plugin-api.hpp"
-
-VJoyControls::VJoyControls()
-{
- ui.setupUi( this );
- connect(ui.btnOK, SIGNAL(clicked()), this, SLOT(doOK()));
- connect(ui.btnCancel, SIGNAL(clicked()), this, SLOT(doCancel()));
-}
-
-void VJoyControls::doOK() {
- save();
- close();
-}
-
-void VJoyControls::doCancel() {
- close();
-}
-
-void VJoyControls::save() {
-}
-
diff --git a/proto-vjoy/ftnoir_vjoy_controls.ui b/proto-vjoy/ftnoir_vjoy_controls.ui
deleted file mode 100644
index aa465b5c..00000000
--- a/proto-vjoy/ftnoir_vjoy_controls.ui
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>UICVJoyControls</class>
- <widget class="QWidget" name="UICVJoyControls">
- <property name="windowModality">
- <enum>Qt::NonModal</enum>
- </property>
- <property name="geometry">
- <rect>
- <x>0</x>
- <y>0</y>
- <width>280</width>
- <height>69</height>
- </rect>
- </property>
- <property name="windowTitle">
- <string>VJoy</string>
- </property>
- <property name="windowIcon">
- <iconset resource="vjoy-protocol.qrc">
- <normaloff>:/images/vjoy.png</normaloff>:/images/vjoy.png</iconset>
- </property>
- <property name="layoutDirection">
- <enum>Qt::LeftToRight</enum>
- </property>
- <property name="autoFillBackground">
- <bool>false</bool>
- </property>
- <layout class="QVBoxLayout" name="_vertical_layout">
- <item>
- <widget class="QLabel" name="label">
- <property name="text">
- <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Go to &lt;a href=&quot;http://headsoft.com.au/index.php?category=vjoy&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;Headsoft's site&lt;/span&gt;&lt;/a&gt; for driver download first.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignCenter</set>
- </property>
- <property name="openExternalLinks">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout">
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_2">
- <property name="sizeConstraint">
- <enum>QLayout::SetDefaultConstraint</enum>
- </property>
- <item>
- <widget class="QPushButton" name="btnOK">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>100</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>100</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="text">
- <string>OK</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="btnCancel">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>100</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>100</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="text">
- <string>Cancel</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- <tabstops>
- <tabstop>btnOK</tabstop>
- <tabstop>btnCancel</tabstop>
- </tabstops>
- <resources>
- <include location="vjoy-protocol.qrc"/>
- </resources>
- <connections/>
- <slots>
- <slot>startEngineClicked()</slot>
- <slot>stopEngineClicked()</slot>
- <slot>cameraSettingsClicked()</slot>
- </slots>
-</ui>
diff --git a/proto-vjoy/images/vjoy.png b/proto-vjoy/images/vjoy.png
deleted file mode 100644
index 8eb14be8..00000000
--- a/proto-vjoy/images/vjoy.png
+++ /dev/null
Binary files differ
diff --git a/proto-vjoy/vjoy-protocol.qrc b/proto-vjoy/vjoy-protocol.qrc
deleted file mode 100644
index 7b3741f1..00000000
--- a/proto-vjoy/vjoy-protocol.qrc
+++ /dev/null
@@ -1,5 +0,0 @@
-<RCC>
- <qresource prefix="/">
- <file>images/vjoy.png</file>
- </qresource>
-</RCC>
diff --git a/proto-vjoy/vjoy.def b/proto-vjoy/vjoy.def
deleted file mode 100644
index aea590a4..00000000
--- a/proto-vjoy/vjoy.def
+++ /dev/null
@@ -1,5 +0,0 @@
-LIBRARY vjoy.dll
-IMPORTS
-VJoy_Initialize = _VJoy_Initialize
-VJoy_Shutdown = _VJoy_Shutdown
-VJoy_UpdateJoyState = _VJoy_UpdateJoyState