56 lines
1.2 KiB
C++
56 lines
1.2 KiB
C++
#include "CProject64Input.h"
|
|
|
|
CProject64Input * g_InputPlugin = nullptr;
|
|
|
|
CProject64Input::CProject64Input(HINSTANCE hinst) :
|
|
m_hinst(hinst),
|
|
m_Scanning(false),
|
|
m_DisplayCtrlId(0)
|
|
{
|
|
memset(m_Controllers, 0, sizeof(m_Controllers));
|
|
}
|
|
|
|
CProject64Input::~CProject64Input()
|
|
{
|
|
}
|
|
|
|
void CProject64Input::InitiateControllers(CONTROL_INFO * ControlInfo)
|
|
{
|
|
if (m_DirectInput.get() == NULL)
|
|
{
|
|
m_DirectInput.reset(new CDirectInput(m_hinst));
|
|
}
|
|
m_DirectInput->Initiate(ControlInfo);
|
|
}
|
|
|
|
void CProject64Input::StartScanDevices(int32_t DisplayCtrlId)
|
|
{
|
|
m_Scanning = true;
|
|
m_DisplayCtrlId = DisplayCtrlId;
|
|
}
|
|
|
|
void CProject64Input::EndScanDevices(void)
|
|
{
|
|
m_Scanning = false;
|
|
m_DisplayCtrlId = 0;
|
|
}
|
|
|
|
CDirectInput::ScanResult CProject64Input::ScanDevices(BUTTON & Button)
|
|
{
|
|
CDirectInput::ScanResult Result = CDirectInput::SCAN_FAILED;
|
|
if (m_DirectInput.get() != NULL)
|
|
{
|
|
Result = m_DirectInput->ScanDevices(Button);
|
|
}
|
|
return Result;
|
|
}
|
|
|
|
std::wstring CProject64Input::ButtonAssignment(BUTTON & Button)
|
|
{
|
|
if (m_DirectInput.get() != NULL)
|
|
{
|
|
return m_DirectInput->ButtonAssignment(Button);
|
|
}
|
|
return L"Unknown";
|
|
}
|