Open 3D Engine AzFramework API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AzFramework::InputChannelDelta Class Reference

#include <InputChannelDelta.h>

Inherits AzFramework::InputChannel.

Inherited by AzFramework::InputChannelDeltaWithSharedPosition2D.

Public Member Functions

 AZ_CLASS_ALLOCATOR (InputChannelDelta, AZ::SystemAllocator)
 
 AZ_RTTI (InputChannelDelta, "{3AE8E55C-08E2-4258-B42E-3C3B6304B5D2}", InputChannel)
 
 InputChannelDelta (const InputChannelId &inputChannelId, const InputDevice &inputDevice)
 
 AZ_DISABLE_COPY_MOVE (InputChannelDelta)
 
 ~InputChannelDelta () override=default
 Default destructor.
 
float GetValue () const override
 
float GetDelta () const override
 
void ResetState () override
 AzFramework::InputChannelRequests::ResetState
 
void SimulateRawInput (float rawValue) override
 AzFramework::InputChannelRequests::SimulateRawInput
 
void ProcessRawInputEvent (float rawValue)
 
- Public Member Functions inherited from AzFramework::InputChannel
 AZ_CLASS_ALLOCATOR (InputChannel, AZ::SystemAllocator)
 
 AZ_RTTI (InputChannel, "{1C88625D-D297-4A1C-AE07-E17F88D138F3}")
 
 InputChannel (const InputChannelId &inputChannelId, const InputDevice &inputDevice)
 
 AZ_DISABLE_COPY_MOVE (InputChannel)
 
 ~InputChannel () override
 Destructor.
 
const InputChannelGetInputChannel () const final
 AzFramework::InputChannelRequests::GetInputChannel
 
const InputChannelIdGetInputChannelId () const
 
const InputDeviceGetInputDevice () const
 
State GetState () const
 
bool IsActive () const
 
virtual float GetValue () const
 
virtual float GetDelta () const
 
virtual const CustomDataGetCustomData () const
 
template<class CustomDataType >
const CustomDataType * GetCustomData () const
 
bool UpdateState (bool isChannelActive)
 
void ResetState () override
 AzFramework::InputChannelRequests::ResetState
 
bool IsStateIdle () const
 
bool IsStateBegan () const
 
bool IsStateUpdated () const
 
bool IsStateEnded () const
 

Additional Inherited Members

- Public Types inherited from AzFramework::InputChannel
enum class  State { Idle , Began , Updated , Ended }
 State of the input channel (not all channels will go through all states) More...
 
using SharedPositionData2D = AZStd::shared_ptr< InputChannel::PositionData2D >
 Alias for verbose shared_ptr class.
 
- Static Public Member Functions inherited from AzFramework::InputChannel
static void Reflect (AZ::ReflectContext *context)
 

Detailed Description

Class for input channels that emit one dimensional delta input values, where the 'delta' and 'value' is one and the same, unlike other input channels that calculate the delta themselves.

Constructor & Destructor Documentation

◆ InputChannelDelta()

AzFramework::InputChannelDelta::InputChannelDelta ( const InputChannelId inputChannelId,
const InputDevice inputDevice 
)
explicit

Constructor

Parameters
[in]inputChannelIdId of the input channel being constructed
[in]inputDeviceInput device that owns the input channel

Member Function Documentation

◆ GetDelta()

float AzFramework::InputChannelDelta::GetDelta ( ) const
overridevirtual

Access to the one dimensional delta/value of the input channel, same as GetValue

Returns
The current delta/value of the input channel

Reimplemented from AzFramework::InputChannel.

◆ GetValue()

float AzFramework::InputChannelDelta::GetValue ( ) const
overridevirtual

Access to the one dimensional delta/value of the input channel, same as GetDelta

Returns
The current delta/value of the input channel

Reimplemented from AzFramework::InputChannel.

◆ ProcessRawInputEvent()

void AzFramework::InputChannelDelta::ProcessRawInputEvent ( float  rawValue)

Process a raw input event, that will in turn update the channel's state based on whether it's active/engaged or inactive/idle, broadcasting an input event if the channel is left in a non-idle state. This function (or InputChannel::UpdateState) should only be called a max of once per channel per frame from InputDeviceRequests::TickInputDevice to ensure that input channels broadcast no more than one event each frame (and at the same time).

Parameters
[in]rawValueThe raw delta value to process

The documentation for this class was generated from the following file: