38 lines
1.1 KiB
C++
38 lines
1.1 KiB
C++
#pragma once
|
|
#include <stdint.h>
|
|
#include <string>
|
|
#include "N64Controller.h"
|
|
#include "Shortcuts.h"
|
|
#include <Project64-plugin-spec/Input.h>
|
|
|
|
class CInputSettings
|
|
{
|
|
public:
|
|
CInputSettings();
|
|
~CInputSettings();
|
|
|
|
void LoadController(uint32_t ControlIndex, CONTROL & ControllerInfo, N64CONTROLLER & Controller);
|
|
void SaveController(uint32_t ControlIndex, const CONTROL & ControllerInfo, const N64CONTROLLER & Controller);
|
|
void ResetController(uint32_t ControlIndex, CONTROL & ControllerInfo, N64CONTROLLER & Controller);
|
|
void GetControllerMouse(N64CONTROLLER& Controller);
|
|
|
|
void LoadShortcuts(SHORTCUTS& Shortcuts);
|
|
void SaveShortcuts(SHORTCUTS& Shortcuts);
|
|
void ResetShortcuts(SHORTCUTS& Shortcuts);
|
|
|
|
private:
|
|
CInputSettings(const CInputSettings&);
|
|
CInputSettings& operator=(const CInputSettings&);
|
|
|
|
static BUTTON StrToButton(const char * Buffer);
|
|
static std::string ButtonToStr(const BUTTON & Button);
|
|
static std::string GUIDtoString(const GUID & guid);
|
|
|
|
void RegisterSettings(void);
|
|
};
|
|
|
|
extern CInputSettings * g_Settings;
|
|
|
|
void SetupInputSettings(void);
|
|
void CleanupInputSettings(void);
|