Browse Source

Some build fixes

Signed-off-by: crueter <crueter@eden-emu.dev>
lizzie/unity-build
crueter 2 days ago
parent
commit
055e619475
No known key found for this signature in database GPG Key ID: 425ACD2D4830EBC6
  1. 14
      src/input_common/drivers/udp_client.cpp
  2. 4
      src/input_common/drivers/udp_client.h
  3. 15
      src/network/packet.h
  4. 4
      src/network/room.cpp
  5. 8
      src/tests/input_common/calibration_configuration_job.cpp
  6. 10
      src/yuzu/configuration/configure_motion_touch.cpp

14
src/input_common/drivers/udp_client.cpp

@ -591,7 +591,7 @@ void TestCommunication(const std::string& host, u16 port,
}
CalibrationConfigurationJob::CalibrationConfigurationJob(
const std::string& host, u16 port, std::function<void(Status)> status_callback,
const std::string& host, u16 port, std::function<void(CalibrationStatus)> status_callback,
std::function<void(u16, u16, u16, u16)> data_callback) {
std::thread([=, this] {
@ -600,14 +600,14 @@ CalibrationConfigurationJob::CalibrationConfigurationJob(
u16 max_x{};
u16 max_y{};
Status current_status{Status::Initialized};
CalibrationStatus current_status{CalibrationStatus::Initialized};
SocketCallback callback{[](Response::Version) {}, [](Response::PortInfo) {},
[&](Response::PadData data) {
constexpr u16 CALIBRATION_THRESHOLD = 100;
if (current_status == Status::Initialized) {
if (current_status == CalibrationStatus::Initialized) {
// Receiving data means the communication is ready now
current_status = Status::Ready;
current_status = CalibrationStatus::Ready;
status_callback(current_status);
}
if (data.touch[0].is_active == 0) {
@ -617,9 +617,9 @@ CalibrationConfigurationJob::CalibrationConfigurationJob(
data.touch[0].y);
min_x = (std::min)(min_x, static_cast<u16>(data.touch[0].x));
min_y = (std::min)(min_y, static_cast<u16>(data.touch[0].y));
if (current_status == Status::Ready) {
if (current_status == CalibrationStatus::Ready) {
// First touch - min data (min_x/min_y)
current_status = Status::Stage1Completed;
current_status = CalibrationStatus::Stage1Completed;
status_callback(current_status);
}
if (data.touch[0].x - min_x > CALIBRATION_THRESHOLD &&
@ -628,7 +628,7 @@ CalibrationConfigurationJob::CalibrationConfigurationJob(
// configuration
max_x = data.touch[0].x;
max_y = data.touch[0].y;
current_status = Status::Completed;
current_status = CalibrationStatus::Completed;
data_callback(min_x, min_y, max_x, max_y);
status_callback(current_status);

4
src/input_common/drivers/udp_client.h

@ -163,7 +163,7 @@ private:
/// An async job allowing configuration of the touchpad calibration.
class CalibrationConfigurationJob {
public:
enum class Status {
enum class CalibrationStatus {
Initialized,
Ready,
Stage1Completed,
@ -176,7 +176,7 @@ public:
* @param data_callback Called when calibration data is ready
*/
explicit CalibrationConfigurationJob(const std::string& host, u16 port,
std::function<void(Status)> status_callback,
std::function<void(CalibrationStatus)> status_callback,
std::function<void(u16, u16, u16, u16)> data_callback);
~CalibrationConfigurationJob();
void Stop();

15
src/network/packet.h

@ -119,26 +119,21 @@ private:
template <typename T>
Packet& Packet::Read(std::vector<T>& out_data) {
// First extract the size
u32 size = 0;
Read(size);
out_data.resize(size);
// Then extract the data
for (std::size_t i = 0; i < out_data.size(); ++i) {
T character;
Read(character);
out_data[i] = character;
for (auto& elem : out_data) {
Read(elem);
}
return *this;
}
template <typename T, std::size_t S>
Packet& Packet::Read(std::array<T, S>& out_data) {
for (std::size_t i = 0; i < out_data.size(); ++i) {
T character;
Read(character);
out_data[i] = character;
for (auto& elem : out_data) {
Read(elem);
}
return *this;
}

4
src/network/room.cpp

@ -832,7 +832,7 @@ void Room::RoomImpl::HandleProxyPacket(const ENetEvent* event) {
in_packet.IgnoreBytes(sizeof(u8)); // Protocol
bool broadcast;
bool broadcast = false;
in_packet.Read(broadcast); // Broadcast
Packet out_packet;
@ -886,7 +886,7 @@ void Room::RoomImpl::HandleLdnPacket(const ENetEvent* event) {
IPv4Address remote_ip;
in_packet.Read(remote_ip); // Remote IP
bool broadcast;
bool broadcast = false;
in_packet.Read(broadcast); // Broadcast
Packet out_packet;

8
src/tests/input_common/calibration_configuration_job.cpp

@ -103,7 +103,7 @@ TEST_CASE("CalibrationConfigurationJob completed", "[input_common]") {
.y = 200,
}});
InputCommon::CemuhookUDP::CalibrationConfigurationJob::Status status{};
InputCommon::CemuhookUDP::CalibrationConfigurationJob::CalibrationStatus status{};
u16 min_x{};
u16 min_y{};
u16 max_x{};
@ -111,10 +111,10 @@ TEST_CASE("CalibrationConfigurationJob completed", "[input_common]") {
InputCommon::CemuhookUDP::CalibrationConfigurationJob job(
server.GetHost(), server.GetPort(),
[&status,
&complete_event](InputCommon::CemuhookUDP::CalibrationConfigurationJob::Status status_) {
&complete_event](InputCommon::CemuhookUDP::CalibrationConfigurationJob::CalibrationStatus status_) {
status = status_;
if (status ==
InputCommon::CemuhookUDP::CalibrationConfigurationJob::Status::Completed) {
InputCommon::CemuhookUDP::CalibrationConfigurationJob::CalibrationStatus::Completed) {
complete_event.Set();
}
},
@ -126,7 +126,7 @@ TEST_CASE("CalibrationConfigurationJob completed", "[input_common]") {
});
complete_event.WaitUntil(std::chrono::system_clock::now() + std::chrono::seconds(10));
REQUIRE(status == InputCommon::CemuhookUDP::CalibrationConfigurationJob::Status::Completed);
REQUIRE(status == InputCommon::CemuhookUDP::CalibrationConfigurationJob::CalibrationStatus::Completed);
REQUIRE(min_x == 0);
REQUIRE(min_y == 0);
REQUIRE(max_x == 200);

10
src/yuzu/configuration/configure_motion_touch.cpp

@ -37,17 +37,17 @@ CalibrationConfigurationDialog::CalibrationConfigurationDialog(QWidget* parent,
using namespace InputCommon::CemuhookUDP;
job = std::make_unique<CalibrationConfigurationJob>(
host, port,
[this](CalibrationConfigurationJob::Status status) {
[this](CalibrationConfigurationJob::CalibrationStatus status) {
QMetaObject::invokeMethod(this, [status, this] {
QString text;
switch (status) {
case CalibrationConfigurationJob::Status::Ready:
case CalibrationConfigurationJob::CalibrationStatus::Ready:
text = tr("Touch the top left corner <br>of your touchpad.");
break;
case CalibrationConfigurationJob::Status::Stage1Completed:
case CalibrationConfigurationJob::CalibrationStatus::Stage1Completed:
text = tr("Now touch the bottom right corner <br>of your touchpad.");
break;
case CalibrationConfigurationJob::Status::Completed:
case CalibrationConfigurationJob::CalibrationStatus::Completed:
text = tr("Configuration completed!");
break;
default:
@ -55,7 +55,7 @@ CalibrationConfigurationDialog::CalibrationConfigurationDialog(QWidget* parent,
}
UpdateLabelText(text);
});
if (status == CalibrationConfigurationJob::Status::Completed) {
if (status == CalibrationConfigurationJob::CalibrationStatus::Completed) {
QMetaObject::invokeMethod(this, [this] { UpdateButtonText(tr("OK")); });
}
},

Loading…
Cancel
Save