summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2020-07-24 15:42:08 -0400
committerLioncash <mathew1800@gmail.com>2020-07-24 15:48:27 -0400
commitf9b856aeda6f2ec70d2b052fd0abfa5219e0d940 (patch)
treefe02fb4b7f374048331c89e464b8400376618673
parent520af035d2dec281e8bc43440948621c7e7b1bd9 (diff)
WiimoteEmu: Mark several getters as const
These don't modify internal class state, so they can be made const.
-rw-r--r--Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp44
-rw-r--r--Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.h26
2 files changed, 34 insertions, 36 deletions
diff --git a/Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp b/Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp
index 8191c231ec..1ce8d6a55b 100644
--- a/Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp
+++ b/Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp
@@ -287,7 +287,7 @@ std::string Wiimote::GetName() const
return fmt::format("Wiimote{}", 1 + m_index);
}
-ControllerEmu::ControlGroup* Wiimote::GetWiimoteGroup(WiimoteGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetWiimoteGroup(WiimoteGroup group) const
{
switch (group)
{
@@ -323,52 +323,52 @@ ControllerEmu::ControlGroup* Wiimote::GetWiimoteGroup(WiimoteGroup group)
}
}
-ControllerEmu::ControlGroup* Wiimote::GetNunchukGroup(NunchukGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetNunchukGroup(NunchukGroup group) const
{
return static_cast<Nunchuk*>(m_attachments->GetAttachmentList()[ExtensionNumber::NUNCHUK].get())
->GetGroup(group);
}
-ControllerEmu::ControlGroup* Wiimote::GetClassicGroup(ClassicGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetClassicGroup(ClassicGroup group) const
{
return static_cast<Classic*>(m_attachments->GetAttachmentList()[ExtensionNumber::CLASSIC].get())
->GetGroup(group);
}
-ControllerEmu::ControlGroup* Wiimote::GetGuitarGroup(GuitarGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetGuitarGroup(GuitarGroup group) const
{
return static_cast<Guitar*>(m_attachments->GetAttachmentList()[ExtensionNumber::GUITAR].get())
->GetGroup(group);
}
-ControllerEmu::ControlGroup* Wiimote::GetDrumsGroup(DrumsGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetDrumsGroup(DrumsGroup group) const
{
return static_cast<Drums*>(m_attachments->GetAttachmentList()[ExtensionNumber::DRUMS].get())
->GetGroup(group);
}
-ControllerEmu::ControlGroup* Wiimote::GetTurntableGroup(TurntableGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetTurntableGroup(TurntableGroup group) const
{
return static_cast<Turntable*>(
m_attachments->GetAttachmentList()[ExtensionNumber::TURNTABLE].get())
->GetGroup(group);
}
-ControllerEmu::ControlGroup* Wiimote::GetUDrawTabletGroup(UDrawTabletGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetUDrawTabletGroup(UDrawTabletGroup group) const
{
return static_cast<UDrawTablet*>(
m_attachments->GetAttachmentList()[ExtensionNumber::UDRAW_TABLET].get())
->GetGroup(group);
}
-ControllerEmu::ControlGroup* Wiimote::GetDrawsomeTabletGroup(DrawsomeTabletGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetDrawsomeTabletGroup(DrawsomeTabletGroup group) const
{
return static_cast<DrawsomeTablet*>(
m_attachments->GetAttachmentList()[ExtensionNumber::DRAWSOME_TABLET].get())
->GetGroup(group);
}
-ControllerEmu::ControlGroup* Wiimote::GetTaTaConGroup(TaTaConGroup group)
+ControllerEmu::ControlGroup* Wiimote::GetTaTaConGroup(TaTaConGroup group) const
{
return static_cast<TaTaCon*>(m_attachments->GetAttachmentList()[ExtensionNumber::TATACON].get())
->GetGroup(group);
@@ -799,7 +799,7 @@ void Wiimote::StepDynamics()
1.f / ::Wiimote::UPDATE_FREQ);
}
-Common::Vec3 Wiimote::GetAcceleration(Common::Vec3 extra_acceleration)
+Common::Vec3 Wiimote::GetAcceleration(Common::Vec3 extra_acceleration) const
{
Common::Vec3 accel = GetOrientation() * GetTransformation().Transform(
m_swing_state.acceleration + extra_acceleration, 0);
@@ -810,7 +810,7 @@ Common::Vec3 Wiimote::GetAcceleration(Common::Vec3 extra_acceleration)
return accel;
}
-Common::Vec3 Wiimote::GetAngularVelocity(Common::Vec3 extra_angular_velocity)
+Common::Vec3 Wiimote::GetAngularVelocity(Common::Vec3 extra_angular_velocity) const
{
return GetOrientation() * (m_tilt_state.angular_velocity + m_swing_state.angular_velocity +
m_point_state.angular_velocity + extra_angular_velocity);
@@ -835,22 +835,20 @@ Common::Matrix33 Wiimote::GetOrientation() const
Common::Matrix33::RotateX(float(MathUtil::TAU / 4 * IsUpright()));
}
-Common::Vec3 Wiimote::GetTotalAcceleration()
+Common::Vec3 Wiimote::GetTotalAcceleration() const
{
- auto accel = m_imu_accelerometer->GetState();
- if (accel.has_value())
- return GetAcceleration(accel.value());
- else
- return GetAcceleration();
+ if (const auto accel = m_imu_accelerometer->GetState())
+ return GetAcceleration(*accel);
+
+ return GetAcceleration();
}
-Common::Vec3 Wiimote::GetTotalAngularVelocity()
+Common::Vec3 Wiimote::GetTotalAngularVelocity() const
{
- auto ang_vel = m_imu_gyroscope->GetState();
- if (ang_vel.has_value())
- return GetAngularVelocity(ang_vel.value());
- else
- return GetAngularVelocity();
+ if (const auto ang_vel = m_imu_gyroscope->GetState())
+ return GetAngularVelocity(*ang_vel);
+
+ return GetAngularVelocity();
}
Common::Matrix44 Wiimote::GetTotalTransformation() const
diff --git a/Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.h b/Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.h
index cfb1205941..8ded6f0dc4 100644
--- a/Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.h
+++ b/Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.h
@@ -114,15 +114,15 @@ public:
std::string GetName() const override;
void LoadDefaults(const ControllerInterface& ciface) override;
- ControllerEmu::ControlGroup* GetWiimoteGroup(WiimoteGroup group);
- ControllerEmu::ControlGroup* GetNunchukGroup(NunchukGroup group);
- ControllerEmu::ControlGroup* GetClassicGroup(ClassicGroup group);
- ControllerEmu::ControlGroup* GetGuitarGroup(GuitarGroup group);
- ControllerEmu::ControlGroup* GetDrumsGroup(DrumsGroup group);
- ControllerEmu::ControlGroup* GetTurntableGroup(TurntableGroup group);
- ControllerEmu::ControlGroup* GetUDrawTabletGroup(UDrawTabletGroup group);
- ControllerEmu::ControlGroup* GetDrawsomeTabletGroup(DrawsomeTabletGroup group);
- ControllerEmu::ControlGroup* GetTaTaConGroup(TaTaConGroup group);
+ ControllerEmu::ControlGroup* GetWiimoteGroup(WiimoteGroup group) const;
+ ControllerEmu::ControlGroup* GetNunchukGroup(NunchukGroup group) const;
+ ControllerEmu::ControlGroup* GetClassicGroup(ClassicGroup group) const;
+ ControllerEmu::ControlGroup* GetGuitarGroup(GuitarGroup group) const;
+ ControllerEmu::ControlGroup* GetDrumsGroup(DrumsGroup group) const;
+ ControllerEmu::ControlGroup* GetTurntableGroup(TurntableGroup group) const;
+ ControllerEmu::ControlGroup* GetUDrawTabletGroup(UDrawTabletGroup group) const;
+ ControllerEmu::ControlGroup* GetDrawsomeTabletGroup(DrawsomeTabletGroup group) const;
+ ControllerEmu::ControlGroup* GetTaTaConGroup(TaTaConGroup group) const;
void Update();
void StepDynamics();
@@ -149,10 +149,10 @@ private:
// Returns simulated accelerometer data in m/s^2.
Common::Vec3 GetAcceleration(
- Common::Vec3 extra_acceleration = Common::Vec3(0, 0, float(GRAVITY_ACCELERATION)));
+ Common::Vec3 extra_acceleration = Common::Vec3(0, 0, float(GRAVITY_ACCELERATION))) const;
// Returns simulated gyroscope data in radians/s.
- Common::Vec3 GetAngularVelocity(Common::Vec3 extra_angular_velocity = {});
+ Common::Vec3 GetAngularVelocity(Common::Vec3 extra_angular_velocity = {}) const;
// Returns the transformation of the world around the wiimote.
// Used for simulating camera data and for rotating acceleration data.
@@ -163,8 +163,8 @@ private:
// Returns the world rotation from the effects of sideways/upright settings.
Common::Matrix33 GetOrientation() const;
- Common::Vec3 GetTotalAcceleration();
- Common::Vec3 GetTotalAngularVelocity();
+ Common::Vec3 GetTotalAcceleration() const;
+ Common::Vec3 GetTotalAngularVelocity() const;
Common::Matrix44 GetTotalTransformation() const;
void HIDOutputReport(const void* data, u32 size);