37 Commits

Author SHA1 Message Date
mimimi085181
1d90719abe Fix latency regression
On master, when polling the 1st in-game controller, Dolphin would poll all the 1st local controllers. With the 1st commit, each client waits its turn, which would dramatically increase the lag.

Now with this commit, it even polls all local controllers at once, so it should have even less latency than master in a few setups. Like one player with 3 controllers and the 2nd one with just one controller.
2016-05-24 22:13:40 +02:00
Lioncash
c434b5b3a9 NetPlayClient: Use std::array instead of C arrays for buffers 2016-01-25 04:57:21 -05:00
Lioncash
e6ad76fa70 NetPlayClient: Extract control mapping checking to its own function 2016-01-25 04:57:19 -05:00
Lioncash
8588c8fd31 NetPlayClient: Make SendAsync take a unique_ptr as a parameter 2016-01-25 04:57:18 -05:00
Lioncash
c2deb337aa NetPlayClient: In-class initialize variables where possible 2016-01-25 04:57:17 -05:00
Lioncash
1d8ff504a5 NetPlayClient: Make m_state private
Also turns it into an enum class.
2016-01-25 04:57:16 -05:00
Lioncash
102672a797 NetPlayClient: Make is_connected private
This is only queried, there's no need to expose it for writing.
Even if it was written to, a data member shouldn't be part of
your public API unless its part of a dumb object or trivial struct.
2016-01-25 04:57:04 -05:00
Lioncash
d9f87b8030 NetPlayClient: Remove unnecessary includes
Replace with needed ones
2016-01-24 21:46:49 -05:00
Lioncash
633be0387d General: Remove unimplemented function prototypes 2015-09-05 22:01:07 -04:00
Lioncash
11f3ded296 NetPlay: Return mapping arrays and player list vectors directly
Simplifies pad map dialog initialization
2015-08-17 21:56:25 -04:00
Lioncash
b1af2a6bbc NetPlay: Use std::array for the pad mappings 2015-08-16 00:08:09 -04:00
comex
9c63b78397 Fix indeterminism in GPU thread mode. 2015-06-06 02:14:06 -04:00
Rachel Bryk
04ca54623c Compare timebase of netplay users to detect desyncs. 2015-06-06 00:52:02 -04:00
Lioncash
de2e84344d Core: Convert volatile bools to atomics
Converts over bools that are typically used as loop checks into atomics.
2015-06-04 21:21:11 -04:00
Lioncash
ac26f8e79f Pass strings by const reference where possible 2015-05-28 20:54:55 -04:00
Lioncash
23c11b3f27 Thread: Remove unused Barrier class 2015-05-26 19:25:59 -04:00
Tillmann Karras
30ebb2459e Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
Tillmann Karras
cefcb0ace9 Update license headers to GPLv2+ 2015-05-25 13:22:31 +02:00
Lioncash
76bbd46829 Core: Remove some header inclusions in header files
Replaces them with forward declarations of used types, or removes them entirely if they aren't used at all. This also replaces certain Common headers with less inclusive ones (in terms of definitions they pull in).
2015-05-08 22:38:59 -04:00
mathieui
8ee402863d NetPlay: Remove RunOnThread and add SendAsync methods
Add std::unique_ptr<sf::Packet> objects to a queue instead of functions,
makes things easier to read, and avoids headaches while checking the
lifetime of the concerned objects.
2015-03-18 10:16:11 +01:00
mathieui
44d7207a1c NetPlay: add a Common/ENetUtil namespace
Move WakeupThread in it
2015-03-18 09:23:44 +01:00
mathieui
603fe25349 NetPlay: use a workaround from comex’s dc-netplay to interrupt enet 2015-03-18 09:23:44 +01:00
Ziek
a629555e6b Added Gui elements in Netplay Setup Diag so a person can choose a traversal server
Fixed bug with UPnP so that it will grab the proper address and protocal
Fixed bug that caused dolphin to freeze when host codes were to large
2015-02-25 18:28:26 -08:00
Ziek
074d688884 Change netplay initial gctime to be determined by the hosts initial time 2015-02-25 18:28:26 -08:00
Ziek
4cdc307b87 Moved Traversal Client code over from old netplay
Moved over gui code for copying host code
added gui to netplay diag setup to switch between direct and traversal connection
2015-02-25 18:28:25 -08:00
Ziek
461a54338b Switched tcp over to enet 2015-02-25 18:17:50 -08:00
James Cowgill
a93f86330e Port dolphin to SFML 2.1 2014-11-25 16:44:38 +00:00
Rachel Bryk
0f3194abc3 Get rid of netpad and just send the GCPadStatus in netplay. 2014-10-16 13:20:00 -04:00
Lioncash
b06ec302d1 Remove some unnecessary semicolons 2014-09-11 13:05:31 -04:00
Rohit Nirmal
fbc64984ca Include CommonTypes.h instead of Common.h. 2014-09-08 15:39:58 -04:00
Lioncash
6faed31a44 Core: Get rid of calls to mem_fn in thread instantiations
These are not necessary for the same behavior.
2014-08-09 12:46:05 -04:00
Lioncash
896d7e5685 Change SPADStatus struct name to GCPadStatus
Also get rid of the typedef, since this is unnecessary in C++
2014-07-10 22:02:38 -04:00
Lioncash
2afe215271 Convert all includes to relative paths. 2014-02-18 02:19:10 -05:00
Lioncash
6c4ee1753a Fix some vertical alignments
ie. uses spaces for alignment.
2014-02-16 20:12:05 -05:00
lioncash
d2038049f5 Replace all include guard ifdefs with "#pragma once" 2014-02-10 18:07:16 -05:00
Lioncash
ebb48d019e Clean up some struct indentations
Also cleaned up the indentations of some variable declarations.
2014-02-09 19:40:11 -05:00
Jasper St. Pierre
34692ab826 Remove unnecessary Src/ folders 2013-12-31 14:03:19 -05:00