1
0
mirror of https://github.com/cathery/sys-con.git synced 2024-11-19 14:10:00 +00:00
sys-con/SwitchUSB/include/SwitchControllerHandler.h
cathery 264673d6fc Reduce memory usage
by using threadCreate instead of std::thread
2019-11-06 15:28:56 +03:00

27 lines
787 B
C++

#pragma once
#include "switch.h"
#include "IController.h"
class SwitchControllerHandler
{
private:
std::unique_ptr<IController> m_controller;
public:
//Initialize the class with specified controller
SwitchControllerHandler(std::unique_ptr<IController> &&controller);
~SwitchControllerHandler();
//Initialize controller and open a separate thread for input
Result Initialize();
//Clean up everything associated with the controller, reset device, close threads, etc
void Exit();
void ConvertAxisToSwitchAxis(float x, float y, float deadzone, s32 *x_out, s32 *y_out);
Result SetControllerVibration(float strong_mag, float weak_mag);
//Get the raw controller pointer
inline IController *GetController() { return m_controller.get(); }
};