diff options
| author | 2023-06-23 09:27:00 -0400 | |
|---|---|---|
| committer | 2023-06-23 09:27:00 -0400 | |
| commit | 87b9b5d10fa4a30c8eb56f9de44ba0c24d57ae77 (patch) | |
| tree | 4239b5df2c866aa26e123719fe838bd6eb0e0394 /src/input_common/drivers/virtual_amiibo.h | |
| parent | Merge pull request #10884 from liamwhite/spaghetti-vfs (diff) | |
| parent | input_common: Implement native mifare support (diff) | |
| download | yuzu-87b9b5d10fa4a30c8eb56f9de44ba0c24d57ae77.tar.gz yuzu-87b9b5d10fa4a30c8eb56f9de44ba0c24d57ae77.tar.xz yuzu-87b9b5d10fa4a30c8eb56f9de44ba0c24d57ae77.zip | |
Merge pull request #10842 from german77/native_mifare
input_common: Implement native mifare/skylander support for joycons/pro controller
Diffstat (limited to 'src/input_common/drivers/virtual_amiibo.h')
| -rw-r--r-- | src/input_common/drivers/virtual_amiibo.h | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/input_common/drivers/virtual_amiibo.h b/src/input_common/drivers/virtual_amiibo.h index 09ca09e68..490f38e05 100644 --- a/src/input_common/drivers/virtual_amiibo.h +++ b/src/input_common/drivers/virtual_amiibo.h | |||
| @@ -20,9 +20,10 @@ namespace InputCommon { | |||
| 20 | class VirtualAmiibo final : public InputEngine { | 20 | class VirtualAmiibo final : public InputEngine { |
| 21 | public: | 21 | public: |
| 22 | enum class State { | 22 | enum class State { |
| 23 | Disabled, | ||
| 23 | Initialized, | 24 | Initialized, |
| 24 | WaitingForAmiibo, | 25 | WaitingForAmiibo, |
| 25 | AmiiboIsOpen, | 26 | TagNearby, |
| 26 | }; | 27 | }; |
| 27 | 28 | ||
| 28 | enum class Info { | 29 | enum class Info { |
| @@ -41,9 +42,17 @@ public: | |||
| 41 | const PadIdentifier& identifier_, const Common::Input::PollingMode polling_mode_) override; | 42 | const PadIdentifier& identifier_, const Common::Input::PollingMode polling_mode_) override; |
| 42 | 43 | ||
| 43 | Common::Input::NfcState SupportsNfc(const PadIdentifier& identifier_) const override; | 44 | Common::Input::NfcState SupportsNfc(const PadIdentifier& identifier_) const override; |
| 44 | 45 | Common::Input::NfcState StartNfcPolling(const PadIdentifier& identifier_) override; | |
| 46 | Common::Input::NfcState StopNfcPolling(const PadIdentifier& identifier_) override; | ||
| 47 | Common::Input::NfcState ReadAmiiboData(const PadIdentifier& identifier_, | ||
| 48 | std::vector<u8>& out_data) override; | ||
| 45 | Common::Input::NfcState WriteNfcData(const PadIdentifier& identifier_, | 49 | Common::Input::NfcState WriteNfcData(const PadIdentifier& identifier_, |
| 46 | const std::vector<u8>& data) override; | 50 | const std::vector<u8>& data) override; |
| 51 | Common::Input::NfcState ReadMifareData(const PadIdentifier& identifier_, | ||
| 52 | const Common::Input::MifareRequest& data, | ||
| 53 | Common::Input::MifareRequest& out_data) override; | ||
| 54 | Common::Input::NfcState WriteMifareData(const PadIdentifier& identifier_, | ||
| 55 | const Common::Input::MifareRequest& data) override; | ||
| 47 | 56 | ||
| 48 | State GetCurrentState() const; | 57 | State GetCurrentState() const; |
| 49 | 58 | ||
| @@ -61,8 +70,9 @@ private: | |||
| 61 | static constexpr std::size_t MifareSize = 0x400; | 70 | static constexpr std::size_t MifareSize = 0x400; |
| 62 | 71 | ||
| 63 | std::string file_path{}; | 72 | std::string file_path{}; |
| 64 | State state{State::Initialized}; | 73 | State state{State::Disabled}; |
| 65 | std::vector<u8> nfc_data; | 74 | std::vector<u8> nfc_data; |
| 75 | Common::Input::NfcStatus status; | ||
| 66 | Common::Input::PollingMode polling_mode{Common::Input::PollingMode::Passive}; | 76 | Common::Input::PollingMode polling_mode{Common::Input::PollingMode::Passive}; |
| 67 | }; | 77 | }; |
| 68 | } // namespace InputCommon | 78 | } // namespace InputCommon |