diff options
| author | Pierre Bourdon <delroth@gmail.com> | 2016-07-15 10:30:30 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-07-15 10:30:30 +0200 |
| commit | 7ca32f4b97592728ed17252c8fd4e83bf8d869c0 (patch) | |
| tree | c4967f79ca739c6213b2858bb0734d49dd3825b5 /Source | |
| parent | a9d8a7decd510aecbc0492709ecd347e0f7b56de (diff) | |
| parent | 5b2ddbc4b22938928ffc00f4d87b147f41cc7ea2 (diff) | |
Merge pull request #4011 from lioncash/array-exi
EXI_Channel: Use std::array
Diffstat (limited to 'Source')
| -rw-r--r-- | Source/Core/Core/HW/EXI_Channel.cpp | 18 | ||||
| -rw-r--r-- | Source/Core/Core/HW/EXI_Channel.h | 3 |
2 files changed, 11 insertions, 10 deletions
diff --git a/Source/Core/Core/HW/EXI_Channel.cpp b/Source/Core/Core/HW/EXI_Channel.cpp index 799c07bd22..e9d5a28c9d 100644 --- a/Source/Core/Core/HW/EXI_Channel.cpp +++ b/Source/Core/Core/HW/EXI_Channel.cpp @@ -30,7 +30,7 @@ CEXIChannel::CEXIChannel(u32 ChannelId) if (m_ChannelId == 1) m_Status.CHIP_SELECT = 1; - for (auto& device : m_pDevices) + for (auto& device : m_devices) device = EXIDevice_Create(EXIDEVICE_NONE, m_ChannelId); } @@ -161,7 +161,7 @@ void CEXIChannel::SendTransferComplete() void CEXIChannel::RemoveDevices() { - for (auto& device : m_pDevices) + for (auto& device : m_devices) device.reset(nullptr); } @@ -176,7 +176,7 @@ void CEXIChannel::AddDevice(std::unique_ptr<IEXIDevice> device, const int device _dbg_assert_(EXPANSIONINTERFACE, device_num < NUM_DEVICES); // Replace it with the new one - m_pDevices[device_num] = std::move(device); + m_devices[device_num] = std::move(device); if (notify_presence_changed) { @@ -214,11 +214,11 @@ IEXIDevice* CEXIChannel::GetDevice(const u8 chip_select) switch (chip_select) { case 1: - return m_pDevices[0].get(); + return m_devices[0].get(); case 2: - return m_pDevices[1].get(); + return m_devices[1].get(); case 4: - return m_pDevices[2].get(); + return m_devices[2].get(); } return nullptr; } @@ -233,7 +233,7 @@ void CEXIChannel::DoState(PointerWrap& p) for (int device_index = 0; device_index < NUM_DEVICES; ++device_index) { - std::unique_ptr<IEXIDevice>& device = m_pDevices[device_index]; + std::unique_ptr<IEXIDevice>& device = m_devices[device_index]; TEXIDevices type = device->m_deviceType; p.Do(type); @@ -252,13 +252,13 @@ void CEXIChannel::DoState(PointerWrap& p) void CEXIChannel::PauseAndLock(bool doLock, bool unpauseOnUnlock) { - for (auto& device : m_pDevices) + for (auto& device : m_devices) device->PauseAndLock(doLock, unpauseOnUnlock); } IEXIDevice* CEXIChannel::FindDevice(TEXIDevices device_type, int customIndex) { - for (auto& sup : m_pDevices) + for (auto& sup : m_devices) { IEXIDevice* device = sup->FindDevice(device_type, customIndex); if (device) diff --git a/Source/Core/Core/HW/EXI_Channel.h b/Source/Core/Core/HW/EXI_Channel.h index 9ae2c409f0..47ef7feb49 100644 --- a/Source/Core/Core/HW/EXI_Channel.h +++ b/Source/Core/Core/HW/EXI_Channel.h @@ -4,6 +4,7 @@ #pragma once +#include <array> #include <memory> #include "Common/CommonTypes.h" @@ -79,7 +80,7 @@ private: NUM_DEVICES = 3 }; - std::unique_ptr<IEXIDevice> m_pDevices[NUM_DEVICES]; + std::array<std::unique_ptr<IEXIDevice>, NUM_DEVICES> m_devices; // Since channels operate a bit differently from each other u32 m_ChannelId; |
