mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-29 09:09:52 -06:00
NetPlay: rename md5 -> game digest
This commit is contained in:
@ -90,10 +90,10 @@ NetPlayClient::~NetPlayClient()
|
||||
|
||||
if (m_is_connected)
|
||||
{
|
||||
m_should_compute_MD5 = false;
|
||||
m_dialog->AbortMD5();
|
||||
if (m_MD5_thread.joinable())
|
||||
m_MD5_thread.join();
|
||||
m_should_compute_game_digest = false;
|
||||
m_dialog->AbortGameDigest();
|
||||
if (m_game_digest_thread.joinable())
|
||||
m_game_digest_thread.join();
|
||||
m_do_loop.Clear();
|
||||
m_thread.join();
|
||||
|
||||
@ -442,24 +442,24 @@ void NetPlayClient::OnData(sf::Packet& packet)
|
||||
OnSyncCodes(packet);
|
||||
break;
|
||||
|
||||
case MessageID::ComputeMD5:
|
||||
OnComputeMD5(packet);
|
||||
case MessageID::ComputeGameDigest:
|
||||
OnComputeGameDigest(packet);
|
||||
break;
|
||||
|
||||
case MessageID::MD5Progress:
|
||||
OnMD5Progress(packet);
|
||||
case MessageID::GameDigestProgress:
|
||||
OnGameDigestProgress(packet);
|
||||
break;
|
||||
|
||||
case MessageID::MD5Result:
|
||||
OnMD5Result(packet);
|
||||
case MessageID::GameDigestResult:
|
||||
OnGameDigestResult(packet);
|
||||
break;
|
||||
|
||||
case MessageID::MD5Error:
|
||||
OnMD5Error(packet);
|
||||
case MessageID::GameDigestError:
|
||||
OnGameDigestError(packet);
|
||||
break;
|
||||
|
||||
case MessageID::MD5Abort:
|
||||
OnMD5Abort();
|
||||
case MessageID::GameDigestAbort:
|
||||
OnGameDigestAbort();
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -1419,48 +1419,48 @@ void NetPlayClient::OnSyncCodesDataAR(sf::Packet& packet)
|
||||
ActionReplay::UpdateSyncedCodes(synced_codes);
|
||||
}
|
||||
|
||||
void NetPlayClient::OnComputeMD5(sf::Packet& packet)
|
||||
void NetPlayClient::OnComputeGameDigest(sf::Packet& packet)
|
||||
{
|
||||
SyncIdentifier sync_identifier;
|
||||
ReceiveSyncIdentifier(packet, sync_identifier);
|
||||
|
||||
ComputeMD5(sync_identifier);
|
||||
ComputeGameDigest(sync_identifier);
|
||||
}
|
||||
|
||||
void NetPlayClient::OnMD5Progress(sf::Packet& packet)
|
||||
void NetPlayClient::OnGameDigestProgress(sf::Packet& packet)
|
||||
{
|
||||
PlayerId pid;
|
||||
int progress;
|
||||
packet >> pid;
|
||||
packet >> progress;
|
||||
|
||||
m_dialog->SetMD5Progress(pid, progress);
|
||||
m_dialog->SetGameDigestProgress(pid, progress);
|
||||
}
|
||||
|
||||
void NetPlayClient::OnMD5Result(sf::Packet& packet)
|
||||
void NetPlayClient::OnGameDigestResult(sf::Packet& packet)
|
||||
{
|
||||
PlayerId pid;
|
||||
std::string result;
|
||||
packet >> pid;
|
||||
packet >> result;
|
||||
|
||||
m_dialog->SetMD5Result(pid, result);
|
||||
m_dialog->SetGameDigestResult(pid, result);
|
||||
}
|
||||
|
||||
void NetPlayClient::OnMD5Error(sf::Packet& packet)
|
||||
void NetPlayClient::OnGameDigestError(sf::Packet& packet)
|
||||
{
|
||||
PlayerId pid;
|
||||
std::string error;
|
||||
packet >> pid;
|
||||
packet >> error;
|
||||
|
||||
m_dialog->SetMD5Result(pid, error);
|
||||
m_dialog->SetGameDigestResult(pid, error);
|
||||
}
|
||||
|
||||
void NetPlayClient::OnMD5Abort()
|
||||
void NetPlayClient::OnGameDigestAbort()
|
||||
{
|
||||
m_should_compute_MD5 = false;
|
||||
m_dialog->AbortMD5();
|
||||
m_should_compute_game_digest = false;
|
||||
m_dialog->AbortGameDigest();
|
||||
}
|
||||
|
||||
void NetPlayClient::Send(const sf::Packet& packet, const u8 channel_id)
|
||||
@ -2469,13 +2469,13 @@ static std::string MD5Sum(const std::string& file_path, std::function<bool(int)>
|
||||
return fmt::format("{:02x}", fmt::join(output, ""));
|
||||
}
|
||||
|
||||
void NetPlayClient::ComputeMD5(const SyncIdentifier& sync_identifier)
|
||||
void NetPlayClient::ComputeGameDigest(const SyncIdentifier& sync_identifier)
|
||||
{
|
||||
if (m_should_compute_MD5)
|
||||
if (m_should_compute_game_digest)
|
||||
return;
|
||||
|
||||
m_dialog->ShowMD5Dialog(sync_identifier.game_id);
|
||||
m_should_compute_MD5 = true;
|
||||
m_dialog->ShowGameDigestDialog(sync_identifier.game_id);
|
||||
m_should_compute_game_digest = true;
|
||||
|
||||
std::string file;
|
||||
if (sync_identifier == GetSDCardIdentifier())
|
||||
@ -2486,26 +2486,26 @@ void NetPlayClient::ComputeMD5(const SyncIdentifier& sync_identifier)
|
||||
if (file.empty() || !File::Exists(file))
|
||||
{
|
||||
sf::Packet packet;
|
||||
packet << MessageID::MD5Error;
|
||||
packet << MessageID::GameDigestError;
|
||||
packet << "file not found";
|
||||
Send(packet);
|
||||
return;
|
||||
}
|
||||
|
||||
if (m_MD5_thread.joinable())
|
||||
m_MD5_thread.join();
|
||||
m_MD5_thread = std::thread([this, file]() {
|
||||
if (m_game_digest_thread.joinable())
|
||||
m_game_digest_thread.join();
|
||||
m_game_digest_thread = std::thread([this, file]() {
|
||||
std::string sum = MD5Sum(file, [&](int progress) {
|
||||
sf::Packet packet;
|
||||
packet << MessageID::MD5Progress;
|
||||
packet << MessageID::GameDigestProgress;
|
||||
packet << progress;
|
||||
SendAsync(std::move(packet));
|
||||
|
||||
return m_should_compute_MD5;
|
||||
return m_should_compute_game_digest;
|
||||
});
|
||||
|
||||
sf::Packet packet;
|
||||
packet << MessageID::MD5Result;
|
||||
packet << MessageID::GameDigestResult;
|
||||
packet << sum;
|
||||
SendAsync(std::move(packet));
|
||||
});
|
||||
|
@ -73,10 +73,10 @@ public:
|
||||
SyncIdentifierComparison* found = nullptr) = 0;
|
||||
virtual std::string FindGBARomPath(const std::array<u8, 20>& hash, std::string_view title,
|
||||
int device_number) = 0;
|
||||
virtual void ShowMD5Dialog(const std::string& title) = 0;
|
||||
virtual void SetMD5Progress(int pid, int progress) = 0;
|
||||
virtual void SetMD5Result(int pid, const std::string& result) = 0;
|
||||
virtual void AbortMD5() = 0;
|
||||
virtual void ShowGameDigestDialog(const std::string& title) = 0;
|
||||
virtual void SetGameDigestProgress(int pid, int progress) = 0;
|
||||
virtual void SetGameDigestResult(int pid, const std::string& result) = 0;
|
||||
virtual void AbortGameDigest() = 0;
|
||||
|
||||
virtual void OnIndexAdded(bool success, std::string error) = 0;
|
||||
virtual void OnIndexRefreshFailed(std::string error) = 0;
|
||||
@ -248,7 +248,7 @@ private:
|
||||
void Disconnect();
|
||||
bool Connect();
|
||||
void SendGameStatus();
|
||||
void ComputeMD5(const SyncIdentifier& sync_identifier);
|
||||
void ComputeGameDigest(const SyncIdentifier& sync_identifier);
|
||||
void DisplayPlayersPing();
|
||||
u32 GetPlayersMaxPing() const;
|
||||
|
||||
@ -291,11 +291,11 @@ private:
|
||||
void OnSyncCodesDataGecko(sf::Packet& packet);
|
||||
void OnSyncCodesNotifyAR(sf::Packet& packet);
|
||||
void OnSyncCodesDataAR(sf::Packet& packet);
|
||||
void OnComputeMD5(sf::Packet& packet);
|
||||
void OnMD5Progress(sf::Packet& packet);
|
||||
void OnMD5Result(sf::Packet& packet);
|
||||
void OnMD5Error(sf::Packet& packet);
|
||||
void OnMD5Abort();
|
||||
void OnComputeGameDigest(sf::Packet& packet);
|
||||
void OnGameDigestProgress(sf::Packet& packet);
|
||||
void OnGameDigestResult(sf::Packet& packet);
|
||||
void OnGameDigestError(sf::Packet& packet);
|
||||
void OnGameDigestAbort();
|
||||
|
||||
bool m_is_connected = false;
|
||||
ConnectionState m_connection_state = ConnectionState::Failure;
|
||||
@ -307,8 +307,8 @@ private:
|
||||
std::string m_player_name;
|
||||
bool m_connecting = false;
|
||||
TraversalClient* m_traversal_client = nullptr;
|
||||
std::thread m_MD5_thread;
|
||||
bool m_should_compute_MD5 = false;
|
||||
std::thread m_game_digest_thread;
|
||||
bool m_should_compute_game_digest = false;
|
||||
Common::Event m_gc_pad_event;
|
||||
Common::Event m_wii_pad_event;
|
||||
Common::Event m_first_pad_status_received_event;
|
||||
|
@ -168,11 +168,11 @@ enum class MessageID : u8
|
||||
TimeBase = 0xB0,
|
||||
DesyncDetected = 0xB1,
|
||||
|
||||
ComputeMD5 = 0xC0,
|
||||
MD5Progress = 0xC1,
|
||||
MD5Result = 0xC2,
|
||||
MD5Abort = 0xC3,
|
||||
MD5Error = 0xC4,
|
||||
ComputeGameDigest = 0xC0,
|
||||
GameDigestProgress = 0xC1,
|
||||
GameDigestResult = 0xC2,
|
||||
GameDigestAbort = 0xC3,
|
||||
GameDigestError = 0xC4,
|
||||
|
||||
Ready = 0xD0,
|
||||
NotReady = 0xD1,
|
||||
|
@ -1068,13 +1068,13 @@ unsigned int NetPlayServer::OnData(sf::Packet& packet, Client& player)
|
||||
}
|
||||
break;
|
||||
|
||||
case MessageID::MD5Progress:
|
||||
case MessageID::GameDigestProgress:
|
||||
{
|
||||
int progress;
|
||||
packet >> progress;
|
||||
|
||||
sf::Packet spac;
|
||||
spac << MessageID::MD5Progress;
|
||||
spac << MessageID::GameDigestProgress;
|
||||
spac << player.pid;
|
||||
spac << progress;
|
||||
|
||||
@ -1082,13 +1082,13 @@ unsigned int NetPlayServer::OnData(sf::Packet& packet, Client& player)
|
||||
}
|
||||
break;
|
||||
|
||||
case MessageID::MD5Result:
|
||||
case MessageID::GameDigestResult:
|
||||
{
|
||||
std::string result;
|
||||
packet >> result;
|
||||
|
||||
sf::Packet spac;
|
||||
spac << MessageID::MD5Result;
|
||||
spac << MessageID::GameDigestResult;
|
||||
spac << player.pid;
|
||||
spac << result;
|
||||
|
||||
@ -1096,13 +1096,13 @@ unsigned int NetPlayServer::OnData(sf::Packet& packet, Client& player)
|
||||
}
|
||||
break;
|
||||
|
||||
case MessageID::MD5Error:
|
||||
case MessageID::GameDigestError:
|
||||
{
|
||||
std::string error;
|
||||
packet >> error;
|
||||
|
||||
sf::Packet spac;
|
||||
spac << MessageID::MD5Error;
|
||||
spac << MessageID::GameDigestError;
|
||||
spac << player.pid;
|
||||
spac << error;
|
||||
|
||||
@ -1252,10 +1252,10 @@ bool NetPlayServer::ChangeGame(const SyncIdentifier& sync_identifier,
|
||||
}
|
||||
|
||||
// called from ---GUI--- thread
|
||||
bool NetPlayServer::ComputeMD5(const SyncIdentifier& sync_identifier)
|
||||
bool NetPlayServer::ComputeGameDigest(const SyncIdentifier& sync_identifier)
|
||||
{
|
||||
sf::Packet spac;
|
||||
spac << MessageID::ComputeMD5;
|
||||
spac << MessageID::ComputeGameDigest;
|
||||
SendSyncIdentifier(spac, sync_identifier);
|
||||
|
||||
SendAsyncToClients(std::move(spac));
|
||||
@ -1264,10 +1264,10 @@ bool NetPlayServer::ComputeMD5(const SyncIdentifier& sync_identifier)
|
||||
}
|
||||
|
||||
// called from ---GUI--- thread
|
||||
bool NetPlayServer::AbortMD5()
|
||||
bool NetPlayServer::AbortGameDigest()
|
||||
{
|
||||
sf::Packet spac;
|
||||
spac << MessageID::MD5Abort;
|
||||
spac << MessageID::GameDigestAbort;
|
||||
|
||||
SendAsyncToClients(std::move(spac));
|
||||
return true;
|
||||
|
@ -45,8 +45,8 @@ public:
|
||||
~NetPlayServer();
|
||||
|
||||
bool ChangeGame(const SyncIdentifier& sync_identifier, const std::string& netplay_name);
|
||||
bool ComputeMD5(const SyncIdentifier& sync_identifier);
|
||||
bool AbortMD5();
|
||||
bool ComputeGameDigest(const SyncIdentifier& sync_identifier);
|
||||
bool AbortGameDigest();
|
||||
void SendChatMessage(const std::string& msg);
|
||||
|
||||
bool DoAllPlayersHaveIPLDump() const;
|
||||
|
Reference in New Issue
Block a user