From 1de40588acd0bfa6d49e3d94fef2cbd6dc09f6e5 Mon Sep 17 00:00:00 2001 From: Jordan Woyak Date: Mon, 31 Jan 2011 08:19:27 +0000 Subject: Eliminate some trampoline functions. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7015 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/InputCommon/Src/UDPWiimote.cpp | 11 ++++------- Source/Core/InputCommon/Src/UDPWiimote.h | 4 ++-- 2 files changed, 6 insertions(+), 9 deletions(-) (limited to 'Source/Core/InputCommon') diff --git a/Source/Core/InputCommon/Src/UDPWiimote.cpp b/Source/Core/InputCommon/Src/UDPWiimote.cpp index 558e4d902d..d31b5ad047 100644 --- a/Source/Core/InputCommon/Src/UDPWiimote.cpp +++ b/Source/Core/InputCommon/Src/UDPWiimote.cpp @@ -39,11 +39,13 @@ #include "Thread.h" #include "Timer.h" + #include #include #include #include #include +#include struct UDPWiimote::_d { @@ -54,12 +56,7 @@ struct UDPWiimote::_d sock_t bipv4_fd,bipv6_fd; }; -int UDPWiimote::noinst=0; - -void UDPWiiThread(UDPWiimote* arg) -{ - arg->mainThread(); -} +int UDPWiimote::noinst = 0; UDPWiimote::UDPWiimote(const char *_port, const char * name, int _index) : port(_port), displayName(name), @@ -135,7 +132,7 @@ UDPWiimote::UDPWiimote(const char *_port, const char * name, int _index) : initBroadcastIPv4(); initBroadcastIPv6(); d->termLock.Enter(); - d->thread = std::thread(UDPWiiThread, this); + d->thread = std::thread(std::mem_fun(&UDPWiimote::mainThread), this); d->termLock.Leave(); return; } diff --git a/Source/Core/InputCommon/Src/UDPWiimote.h b/Source/Core/InputCommon/Src/UDPWiimote.h index 02fa4f66bc..1be83dbf74 100644 --- a/Source/Core/InputCommon/Src/UDPWiimote.h +++ b/Source/Core/InputCommon/Src/UDPWiimote.h @@ -21,7 +21,6 @@ class UDPWiimote { - friend void UDPWiiThread(UDPWiimote* arg); public: UDPWiimote(const char * port, const char * name, int index); virtual ~UDPWiimote(); @@ -33,10 +32,11 @@ public: int getErrNo() {return err;}; const char * getPort(); void changeName(const char * name); + + void mainThread(); private: std::string port,displayName; int pharsePacket(u8 * data, size_t size); - void mainThread(); struct _d; //using pimpl because Winsock2.h doesen't have include guards -_- _d *d; double x,y,z; -- cgit v1.2.3