![]() |
ezEngine
Release 25.03
|
These flags are specified when registering an input slot (by a device), to define some capabilities and restrictions of the hardware. More...
#include <Declarations.h>
Classes | |
struct | Bits |
Public Types | |
enum | Enum { None = 0, ReportsRelativeValues = EZ_BIT(0), ValueBinaryZeroOrOne = EZ_BIT(1), ValueRangeZeroToOne = EZ_BIT(2), ValueRangeZeroToInf = EZ_BIT(3), Pressable = EZ_BIT(4), Holdable = EZ_BIT(5), HalfAxis = EZ_BIT(6), FullAxis = EZ_BIT(7), RequiresDeadZone = EZ_BIT(8), ValuesAreNonContinuous = EZ_BIT(9), ActivationDependsOnOthers = EZ_BIT(10), NeverTimeScale = EZ_BIT(11), IsButton = ValueBinaryZeroOrOne | Pressable | Holdable, IsMouseWheel = ReportsRelativeValues | ValueRangeZeroToInf | Pressable | HalfAxis | NeverTimeScale, IsAnalogTrigger = ValueRangeZeroToOne | Pressable | Holdable | FullAxis | RequiresDeadZone, IsMouseAxisPosition = ValueRangeZeroToOne | FullAxis | NeverTimeScale, IsMouseAxisMove = ReportsRelativeValues | ValueRangeZeroToInf | HalfAxis | NeverTimeScale, IsAnalogStick = ValueRangeZeroToOne | Holdable | HalfAxis | RequiresDeadZone, IsDoubleClick = ValueBinaryZeroOrOne | Pressable | NeverTimeScale, IsTouchPosition = ValueRangeZeroToOne | FullAxis | NeverTimeScale | ValuesAreNonContinuous, IsTouchPoint = ValueBinaryZeroOrOne | Pressable | Holdable | ActivationDependsOnOthers, IsDPad = ValueBinaryZeroOrOne | Pressable | Holdable | HalfAxis, IsTrackedValue = ValueRangeZeroToInf | HalfAxis | NeverTimeScale | ValuesAreNonContinuous, Default = None } |
using | StorageType = ezUInt16 |
These flags are specified when registering an input slot (by a device), to define some capabilities and restrictions of the hardware.
By default you do not need to use these flags at all. However, when presenting the user with a list of 'possible' buttons to press to map to an action, these flags can be used to filter out unwanted slots. For example you can filter out mouse movements by requiring that the input slot must be pressable or may not represent any axis. You an additionally also use the prefix of the input slot name, to filter out all touch input slots etc. if necessary.