Apollo/inputdll.h
Azimer 4b081bc1c9 Apollo v0.10 Private Beta R1.5 - 2002-Aug-13
One of the last source codes before I went on hiatus.
2019-09-27 10:18:02 -05:00

35 lines
1.3 KiB
C

#ifndef __INPUTDLL_DOT_H__
#define __INPUTDLL_DOT_H__
#include "plugin.h"
BOOL LoadInputPlugin (char *libname);
void CloseInputPlugin ();
void InitINPPlugin ();
typedef struct {
HINSTANCE hinstLibInput; // hInstance to the INPUT Plugin Library
// True to the specs functions
void (__cdecl* CloseDLL )( void );
void (__cdecl* ControllerCommand )( int Control, BYTE * Command );
void (__cdecl* DllAbout )( HWND hParent );
void (__cdecl* DllConfig )( HWND hParent );
void (__cdecl* DllTest )( HWND hParent );
void (__cdecl* GetDllInfo )( PLUGIN_INFO * PluginInfo );
void (__cdecl* GetKeys )( int Control, BUTTONS * Keys );
void (__cdecl* InitiateControllers )( HWND hMainWindow, CONTROL Controls[4] );
void (__cdecl* ReadController )( int Control, BYTE * Command );
void (__cdecl* RomClosed )( void );
void (__cdecl* RomOpen )( void );
void (__cdecl* WM_KeyDown )( WPARAM wParam, LPARAM lParam );
void (__cdecl* WM_KeyUp )( WPARAM wParam, LPARAM lParam );
// Support Functions...
inline BOOL Load (char* libname) {return LoadInputPlugin(libname);} // Loads a plugin with the specified name
inline void Close () {CloseInputPlugin();} // Closes a previously loaded plugin
} INPUTDLL;
extern INPUTDLL inpdll;
extern CONTROL ContInfo[4];
#endif //__INPUTDLL_DOT_H__