40 #ifndef _inputbuttondevice_h
41 #define _inputbuttondevice_h
43 #include "Input/metacode.h"
59 std::vector<Whole> TransitioningIndexes;
60 std::vector<Input::ButtonState> Buttons;
63 virtual void UpdateImpl(
const MetaCodeContainer& DeltaCodes, MetaCodeContainer& GeneratedCodes) = 0;
65 virtual void VerifySequenceImpl(
const MetaCodeContainer& Sequence)
const = 0;
68 virtual void AddPressedButtons(MetaCodeContainer& GeneratedCodes)
const = 0;
71 void UpdateButtonTransitions();
83 UInt16 GetNumButtons()
const;
88 bool IsButtonPressed(
const UInt16 Button)
const;
97 bool IsButtonPressing(
const UInt16 Button)
const;
106 bool IsButtonLifting(
const UInt16 Button)
const;
114 bool IsButtonTransitioning(
const UInt16 Button)
const;
141 void _Update(
const MetaCodeContainer& DeltaCodes, MetaCodeContainer& GeneratedCodes);