/ src / Ryujinx.Common / Configuration / Hid / InputConfig.cs
InputConfig.cs
 1  using System.ComponentModel;
 2  using System.Runtime.CompilerServices;
 3  using System.Text.Json.Serialization;
 4  
 5  namespace Ryujinx.Common.Configuration.Hid
 6  {
 7      [JsonConverter(typeof(JsonInputConfigConverter))]
 8      public class InputConfig : INotifyPropertyChanged
 9      {
10          /// <summary>
11          /// The current version of the input file format
12          /// </summary>
13          public const int CurrentVersion = 1;
14  
15          public int Version { get; set; }
16  
17          public InputBackendType Backend { get; set; }
18  
19          /// <summary>
20          /// Controller id
21          /// </summary>
22          public string Id { get; set; }
23  
24          /// <summary>
25          ///  Controller's Type
26          /// </summary>
27          public ControllerType ControllerType { get; set; }
28  
29          /// <summary>
30          ///  Player's Index for the controller
31          /// </summary>
32          public PlayerIndex PlayerIndex { get; set; }
33  
34          public event PropertyChangedEventHandler PropertyChanged;
35  
36          protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
37          {
38              PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
39          }
40      }
41  }