GC Adapter Implementation

This commit is contained in:
Ameer
2020-06-21 12:36:28 -04:00
parent f98bf1025f
commit 0248614add
18 changed files with 1156 additions and 158 deletions

View File

@ -16,7 +16,10 @@ namespace InputCommon::CemuhookUDP {
class UDPTouchDevice final : public Input::TouchDevice {
public:
explicit UDPTouchDevice(std::shared_ptr<DeviceStatus> status_) : status(std::move(status_)) {}
explicit UDPTouchDevice(std::shared_ptr<DeviceStatus> status_)
: status(std::move(status_)) {
}
std::tuple<float, float, bool> GetStatus() const override {
std::lock_guard guard(status->update_mutex);
return status->touch_status;
@ -28,7 +31,10 @@ private:
class UDPMotionDevice final : public Input::MotionDevice {
public:
explicit UDPMotionDevice(std::shared_ptr<DeviceStatus> status_) : status(std::move(status_)) {}
explicit UDPMotionDevice(std::shared_ptr<DeviceStatus> status_)
: status(std::move(status_)) {
}
std::tuple<Common::Vec3<float>, Common::Vec3<float>> GetStatus() const override {
std::lock_guard guard(status->update_mutex);
return status->motion_status;
@ -40,7 +46,9 @@ private:
class UDPTouchFactory final : public Input::Factory<Input::TouchDevice> {
public:
explicit UDPTouchFactory(std::shared_ptr<DeviceStatus> status_) : status(std::move(status_)) {}
explicit UDPTouchFactory(std::shared_ptr<DeviceStatus> status_)
: status(std::move(status_)) {
}
std::unique_ptr<Input::TouchDevice> Create(const Common::ParamPackage& params) override {
{
@ -61,7 +69,9 @@ private:
class UDPMotionFactory final : public Input::Factory<Input::MotionDevice> {
public:
explicit UDPMotionFactory(std::shared_ptr<DeviceStatus> status_) : status(std::move(status_)) {}
explicit UDPMotionFactory(std::shared_ptr<DeviceStatus> status_)
: status(std::move(status_)) {
}
std::unique_ptr<Input::MotionDevice> Create(const Common::ParamPackage& params) override {
return std::make_unique<UDPMotionDevice>(status);