public Core_vJoyInterfaceWrap()
 {
     _isLive = Devcon.FindDeviceByInterfaceId(InterfaceGuid, out var path, out _);
     if (_isLive)
     {
         _errorMessage = string.Empty;
     }
     else
     {
         _errorMessage = "vJoy device driver not installed";
     }
     for (uint i = 0; i < 16; i++)
     {
         _vJoyDevices[i] = new VjoyDevice(i + 1);
     }
     for (var p = 0; p < 4; p++)
     {
         PovBindingInfos[p] = new List <BindingReport>();
         for (var d = 0; d < 4; d++)
         {
             PovBindingInfos[p].Add(new BindingReport
             {
                 Title             = PovDirections[d],
                 Category          = BindingCategory.Momentary,
                 BindingDescriptor = new BindingDescriptor
                 {
                     Type  = BindingType.POV,
                     Index = (p * 4) + d
                 }
             });
         }
     }
     QueryDevices();
 }
 public Core_vJoyInterfaceWrap()
 {
     for (uint i = 0; i < 16; i++)
     {
         vJoyDevices[i] = new VjoyDevice(i + 1);
     }
     for (int p = 0; p < 4; p++)
     {
         povBindingInfos[p] = new List <BindingReport>();
         for (int d = 0; d < 4; d++)
         {
             povBindingInfos[p].Add(new BindingReport
             {
                 Title             = povDirections[d],
                 Category          = BindingCategory.Momentary,
                 BindingDescriptor = new BindingDescriptor
                 {
                     Type  = BindingType.POV,
                     Index = (p * 4) + d
                 }
             });
         }
     }
     QueryDevices();
 }