diff options
Diffstat (limited to 'src/frontend/mame/iptseqpoll.h')
-rw-r--r-- | src/frontend/mame/iptseqpoll.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/frontend/mame/iptseqpoll.h b/src/frontend/mame/iptseqpoll.h new file mode 100644 index 00000000000..e3083f7509a --- /dev/null +++ b/src/frontend/mame/iptseqpoll.h @@ -0,0 +1,39 @@ +// license:BSD-3-Clause +// copyright-holders:Vas Crabb,Aaron Giles +/*************************************************************************** + + iptseqpoll.h + + Helper for letting the user select input sequences. + +***************************************************************************/ +#ifndef MAME_FRONTEND_IPTSEQPOLL_H +#define MAME_FRONTEND_IPTSEQPOLL_H + +#pragma once + + +class input_sequence_poller +{ +public: + input_sequence_poller(input_manager &manager) noexcept; + + void start(input_item_class itemclass); + void start(input_item_class itemclass, input_seq const &startseq); + bool poll(); + + input_seq const &sequence() const noexcept { return m_sequence; } + bool valid() const noexcept { return m_sequence.is_valid(); } + bool modified() const noexcept { return m_modified; } + +private: + void do_start(input_item_class itemclass); + + input_manager &m_manager; + input_seq m_sequence; + input_item_class m_class; + osd_ticks_t m_last_ticks; + bool m_modified; +}; + +#endif // MAME_FRONTEND_IPTSEQPOLL_H |