FS2_Open
Open source remastering of the Freespace 2 engine
swff_lib.cpp File Reference
#include "globalincs/pstypes.h"
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include "mmsystem.h"
#include "io/sw_force.h"
#include "sw_guid.hpp"
#include "directx/vdinput.h"

Go to the source code of this file.

Macros

#define INITGUIDS
 
#define GUID_VFX_Object   "{04ace0a7-1fa8-11d0-aa22-00a0c911f471}"
 

Functions

BOOL CALLBACK DIEnumAndDestroyCreatedEffectsProc (LPDIRECTINPUTEFFECT pDIEffect, LPVOID lpvRef)
 
BOOL CALLBACK DIEnumDevicesProc (LPCDIDEVICEINSTANCE lpddi, LPVOID lpvContext)
 
HRESULT SWFF_OpenDefaultFFJoystick (IN HWND hWnd, LPDIRECTINPUT *ppDI, LPDIRECTINPUTDEVICE2 *ppDIDevice)
 
HRESULT SWFF_OpenDefaultFFJoystickEx (IN HWND hWnd, IN HINSTANCE hInstance, OUT LPDIRECTINPUT *ppDI, OUT LPDIRECTINPUTDEVICE2 *ppDIDevice, IN DWORD dwFlags)
 
HRESULT SWFF_DestroyEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN LPDIRECTINPUTEFFECT pDIEffect)
 
HRESULT SWFF_DestroyAllEffects (IN LPDIRECTINPUTDEVICE2 pDIDevice)
 
HRESULT SWFF_SetGain (IN LPDIRECTINPUTEFFECT pDIEffect, IN DWORD dwGain)
 
HRESULT SWFF_SetDirection (IN LPDIRECTINPUTEFFECT pDIEffect, IN DWORD dwAngle)
 
HRESULT SWFF_SetDirectionGain (IN LPDIRECTINPUTEFFECT pDIEffect, IN DWORD dwAngle, IN DWORD dwGain)
 
HRESULT SWFF_SetDuration (IN LPDIRECTINPUTEFFECT pDIEffect, IN DWORD dwDuration)
 
HRESULT SWFF_PutRawForce (IN LPDIRECTINPUTEFFECT pDIEffect, IN LONG lMagnitude, IN DWORD dwDirection)
 
HRESULT SWFF_PutRawAxisForce (IN LPDIRECTINPUTEFFECT pDIEffect, IN LONG lMagnitude)
 
HRESULT SWFF_CreateROMEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN REFGUID refGUID, IN DWORD dwDuration, IN DWORD dwGain, IN DWORD dwDirection, IN LONG lButton)
 
BOOL SWFF_WriteRegString (IN LPCTSTR pszKey, IN LPCTSTR pszValue)
 
BOOL SWFF_RegisterVFXObject (IN LPCTSTR pszVFXPath)
 
HRESULT SWFF_CreatePeriodicEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwType, IN DWORD dwDuration, IN DWORD dwPeriod, IN DWORD dwDirection, IN DWORD dwMagnitude, IN LONG lOffset, IN DWORD dwAttackTime, IN DWORD dwAttackLevel, IN DWORD dwFadeTime, IN DWORD dwFadeLevel, IN LONG lButton)
 
HRESULT SWFF_CreateSpringEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwDuration, IN LONG lKx, IN LONG lCenterx, IN LONG lKy, IN LONG lCentery, IN LONG lButton)
 
HRESULT SWFF_CreateDamperEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwDuration, IN LONG lBx, IN LONG lV0x, IN LONG lBy, IN LONG lV0y, IN LONG lButton)
 
HRESULT SWFF_CreateInertiaEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwDuration, IN LONG lMx, IN LONG lA0x, IN LONG lMy, IN LONG lA0y, IN LONG lButton)
 
HRESULT SWFF_CreateFrictionEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwDuration, IN LONG lFx, IN LONG lFy, IN LONG lButton)
 
HRESULT SWFF_CreateConditionEffectStruct (di_condition_effect_struct *ptr, IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwType, IN DWORD dwDuration, IN LONG lXCoefficient, IN LONG lXOffset, IN LONG lYCoefficient, IN LONG lYOffset, IN LONG lButton)
 
HRESULT SWFF_CreateConditionEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwType, IN DWORD dwDuration, IN LONG lXCoefficient, IN LONG lXOffset, IN LONG lYCoefficient, IN LONG lYOffset, IN LONG lButton)
 
HRESULT SWFF_CreateRampEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwDuration, IN DWORD dwDirection, IN LONG lStart, IN LONG lEnd, IN DWORD dwAttackTime, IN DWORD dwAttackLevel, IN DWORD dwFadeTime, IN DWORD dwFadeLevel, IN LONG lButton)
 
HRESULT SWFF_CreateConstantForceEffect (IN LPDIRECTINPUTDEVICE2 pDIDevice, IN OUT LPDIRECTINPUTEFFECT *ppDIEffect, IN DWORD dwDuration, IN DWORD dwDirection, IN LONG lMagnitude, IN DWORD dwAttackTime, IN DWORD dwAttackLevel, IN DWORD dwFadeTime, IN DWORD dwFadeLevel, IN LONG lButton)
 
BOOL SWFF_GetJoyData (int nJoyID, JOYINFOEX *pjix, char *pszErr)
 
void SWFF_ErrorCodeToString (HRESULT hResult, TCHAR *pszCodeString)
 

Macro Definition Documentation

#define GUID_VFX_Object   "{04ace0a7-1fa8-11d0-aa22-00a0c911f471}"

Definition at line 803 of file swff_lib.cpp.

#define INITGUIDS

Definition at line 42 of file swff_lib.cpp.

Function Documentation

BOOL CALLBACK DIEnumAndDestroyCreatedEffectsProc ( LPDIRECTINPUTEFFECT  pDIEffect,
LPVOID  lpvRef 
)

Definition at line 371 of file swff_lib.cpp.

BOOL CALLBACK DIEnumDevicesProc ( LPCDIDEVICEINSTANCE  lpddi,
LPVOID  lpvContext 
)

Definition at line 304 of file swff_lib.cpp.

HRESULT SWFF_CreateConditionEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwType,
IN DWORD  dwDuration,
IN LONG  lXCoefficient,
IN LONG  lXOffset,
IN LONG  lYCoefficient,
IN LONG  lYOffset,
IN LONG  lButton 
)

Definition at line 1941 of file swff_lib.cpp.

HRESULT SWFF_CreateConditionEffectStruct ( di_condition_effect_struct ptr,
IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwType,
IN DWORD  dwDuration,
IN LONG  lXCoefficient,
IN LONG  lXOffset,
IN LONG  lYCoefficient,
IN LONG  lYOffset,
IN LONG  lButton 
)

Definition at line 1812 of file swff_lib.cpp.

HRESULT SWFF_CreateConstantForceEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwDuration,
IN DWORD  dwDirection,
IN LONG  lMagnitude,
IN DWORD  dwAttackTime,
IN DWORD  dwAttackLevel,
IN DWORD  dwFadeTime,
IN DWORD  dwFadeLevel,
IN LONG  lButton 
)

Definition at line 2147 of file swff_lib.cpp.

HRESULT SWFF_CreateDamperEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwDuration,
IN LONG  lBx,
IN LONG  lV0x,
IN LONG  lBy,
IN LONG  lV0y,
IN LONG  lButton 
)

Definition at line 1696 of file swff_lib.cpp.

HRESULT SWFF_CreateFrictionEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwDuration,
IN LONG  lFx,
IN LONG  lFy,
IN LONG  lButton 
)

Definition at line 1787 of file swff_lib.cpp.

HRESULT SWFF_CreateInertiaEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwDuration,
IN LONG  lMx,
IN LONG  lA0x,
IN LONG  lMy,
IN LONG  lA0y,
IN LONG  lButton 
)

Definition at line 1743 of file swff_lib.cpp.

HRESULT SWFF_CreatePeriodicEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwType,
IN DWORD  dwDuration,
IN DWORD  dwPeriod,
IN DWORD  dwDirection,
IN DWORD  dwMagnitude,
IN LONG  lOffset,
IN DWORD  dwAttackTime,
IN DWORD  dwAttackLevel,
IN DWORD  dwFadeTime,
IN DWORD  dwFadeLevel,
IN LONG  lButton 
)

Definition at line 1533 of file swff_lib.cpp.

HRESULT SWFF_CreateRampEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwDuration,
IN DWORD  dwDirection,
IN LONG  lStart,
IN LONG  lEnd,
IN DWORD  dwAttackTime,
IN DWORD  dwAttackLevel,
IN DWORD  dwFadeTime,
IN DWORD  dwFadeLevel,
IN LONG  lButton 
)

Definition at line 2070 of file swff_lib.cpp.

HRESULT SWFF_CreateROMEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN REFGUID  refGUID,
IN DWORD  dwDuration,
IN DWORD  dwGain,
IN DWORD  dwDirection,
IN LONG  lButton 
)

Definition at line 691 of file swff_lib.cpp.

HRESULT SWFF_CreateSpringEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN OUT LPDIRECTINPUTEFFECT ppDIEffect,
IN DWORD  dwDuration,
IN LONG  lKx,
IN LONG  lCenterx,
IN LONG  lKy,
IN LONG  lCentery,
IN LONG  lButton 
)

Definition at line 1651 of file swff_lib.cpp.

HRESULT SWFF_DestroyAllEffects ( IN LPDIRECTINPUTDEVICE2  pDIDevice)

Definition at line 357 of file swff_lib.cpp.

HRESULT SWFF_DestroyEffect ( IN LPDIRECTINPUTDEVICE2  pDIDevice,
IN LPDIRECTINPUTEFFECT  pDIEffect 
)

Definition at line 333 of file swff_lib.cpp.

void SWFF_ErrorCodeToString ( HRESULT  hResult,
TCHAR *  pszCodeString 
)

Definition at line 2415 of file swff_lib.cpp.

BOOL SWFF_GetJoyData ( int  nJoyID,
JOYINFOEX *  pjix,
char *  pszErr 
)

Definition at line 2304 of file swff_lib.cpp.

HRESULT SWFF_OpenDefaultFFJoystick ( IN HWND  hWnd,
LPDIRECTINPUT ppDI,
LPDIRECTINPUTDEVICE2 ppDIDevice 
)

Definition at line 68 of file swff_lib.cpp.

HRESULT SWFF_OpenDefaultFFJoystickEx ( IN HWND  hWnd,
IN HINSTANCE  hInstance,
OUT LPDIRECTINPUT ppDI,
OUT LPDIRECTINPUTDEVICE2 ppDIDevice,
IN DWORD  dwFlags 
)

Definition at line 191 of file swff_lib.cpp.

HRESULT SWFF_PutRawAxisForce ( IN LPDIRECTINPUTEFFECT  pDIEffect,
IN LONG  lMagnitude 
)

Definition at line 527 of file swff_lib.cpp.

HRESULT SWFF_PutRawForce ( IN LPDIRECTINPUTEFFECT  pDIEffect,
IN LONG  lMagnitude,
IN DWORD  dwDirection 
)

Definition at line 486 of file swff_lib.cpp.

BOOL SWFF_RegisterVFXObject ( IN LPCTSTR  pszVFXPath)

Definition at line 804 of file swff_lib.cpp.

HRESULT SWFF_SetDirection ( IN LPDIRECTINPUTEFFECT  pDIEffect,
IN DWORD  dwAngle 
)

Definition at line 412 of file swff_lib.cpp.

HRESULT SWFF_SetDirectionGain ( IN LPDIRECTINPUTEFFECT  pDIEffect,
IN DWORD  dwAngle,
IN DWORD  dwGain 
)

Definition at line 430 of file swff_lib.cpp.

HRESULT SWFF_SetDuration ( IN LPDIRECTINPUTEFFECT  pDIEffect,
IN DWORD  dwDuration 
)

Definition at line 461 of file swff_lib.cpp.

HRESULT SWFF_SetGain ( IN LPDIRECTINPUTEFFECT  pDIEffect,
IN DWORD  dwGain 
)

Definition at line 389 of file swff_lib.cpp.

BOOL SWFF_WriteRegString ( IN LPCTSTR  pszKey,
IN LPCTSTR  pszValue 
)

Definition at line 758 of file swff_lib.cpp.