Class InputStateHistory
Record a history of state changes applied to one or more controls.
Inheritance
System.Object
InputStateHistory
Syntax
public class InputStateHistory : IDisposable, IEnumerable<InputStateHistory.Record>, IEnumerable, IInputStateChangeMonitor
Constructors
InputStateHistory(IEnumerable<InputControl>)
Declaration
public InputStateHistory(IEnumerable<InputControl> controls)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<InputControl> |
controls |
|
InputStateHistory(Int32)
Declaration
public InputStateHistory(int maxStateSizeInBytes)
Parameters
Type |
Name |
Description |
System.Int32 |
maxStateSizeInBytes |
|
InputStateHistory(String)
Declaration
public InputStateHistory(string path)
Parameters
Type |
Name |
Description |
System.String |
path |
|
InputStateHistory(InputControl)
Declaration
public InputStateHistory(InputControl control)
Parameters
Properties
controls
Declaration
public ReadOnlyArray<InputControl> controls { get; }
Property Value
Count
Declaration
public int Count { get; }
Property Value
Type |
Description |
System.Int32 |
|
Declaration
public int extraMemoryPerRecord { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
historyDepth
Declaration
public int historyDepth { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
Item[Int32]
Declaration
public InputStateHistory.Record this[int index] { get; set; }
Parameters
Type |
Name |
Description |
System.Int32 |
index |
|
Property Value
onRecordAdded
Declaration
public Action<InputStateHistory.Record> onRecordAdded { get; set; }
Property Value
onShouldRecordStateChange
Declaration
public Func<InputControl, double, InputEventPtr, bool> onShouldRecordStateChange { get; set; }
Property Value
updateMask
Declaration
public InputUpdateType updateMask { get; set; }
Property Value
version
Declaration
public uint version { get; }
Property Value
Type |
Description |
System.UInt32 |
|
Methods
AddRecord(InputStateHistory.Record)
Declaration
public InputStateHistory.Record AddRecord(InputStateHistory.Record record)
Parameters
Returns
AllocateRecord(out Int32)
Declaration
protected InputStateHistory.RecordHeader*AllocateRecord(out int index)
Parameters
Type |
Name |
Description |
System.Int32 |
index |
|
Returns
Clear()
Declaration
Destroy()
Declaration
Dispose()
Declaration
Finalize()
Declaration
protected void Finalize()
GetEnumerator()
Declaration
public IEnumerator<InputStateHistory.Record> GetEnumerator()
Returns
GetRecord(Int32)
Declaration
protected InputStateHistory.RecordHeader*GetRecord(int index)
Parameters
Type |
Name |
Description |
System.Int32 |
index |
|
Returns
Declaration
protected TValue ReadValue<TValue>(InputStateHistory.RecordHeader*data)
where TValue : struct
Parameters
Returns
Type Parameters
Declaration
protected object ReadValueAsObject(InputStateHistory.RecordHeader*data)
Parameters
Returns
Type |
Description |
System.Object |
|
RecordIndexToUserIndex(Int32)
Declaration
protected int RecordIndexToUserIndex(int index)
Parameters
Type |
Name |
Description |
System.Int32 |
index |
|
Returns
Type |
Description |
System.Int32 |
|
RecordStateChange(InputControl, Void*, Double)
Declaration
public InputStateHistory.Record RecordStateChange(InputControl control, void *statePtr, double time)
Parameters
Type |
Name |
Description |
InputControl |
control |
|
System.Void* |
statePtr |
|
System.Double |
time |
|
Returns
RecordStateChange(InputControl, InputEventPtr)
Declaration
public InputStateHistory.Record RecordStateChange(InputControl control, InputEventPtr eventPtr)
Parameters
Returns
StartRecording()
Declaration
public void StartRecording()
StopRecording()
Declaration
public void StopRecording()
UserIndexToRecordIndex(Int32)
Declaration
protected int UserIndexToRecordIndex(int index)
Parameters
Type |
Name |
Description |
System.Int32 |
index |
|
Returns
Type |
Description |
System.Int32 |
|
Explicit Interface Implementations
IInputStateChangeMonitor.NotifyControlStateChanged(InputControl, Double, InputEventPtr, Int64)
Declaration
void IInputStateChangeMonitor.NotifyControlStateChanged(InputControl control, double time, InputEventPtr eventPtr, long monitorIndex)
Parameters
Implements
IInputStateChangeMonitor.NotifyTimerExpired(InputControl, Double, Int64, Int32)
Declaration
void IInputStateChangeMonitor.NotifyTimerExpired(InputControl control, double time, long monitorIndex, int timerIndex)
Parameters
Type |
Name |
Description |
InputControl |
control |
|
System.Double |
time |
|
System.Int64 |
monitorIndex |
|
System.Int32 |
timerIndex |
|
Implements