using System;
using System.Collections.Generic;
namespace RGB.NET.Devices.CoolerMaster
{
///
/// Contains all the hardware-id mappings for CoolerMaster devices.
///
internal static class CoolerMasterKeyboardLedMappings
{
#region Properties & Fields
private static readonly Dictionary> MasterKeysL_US = new Dictionary>
{
{ CoolerMasterLedIds.A, new Tuple(3,1) },
{ CoolerMasterLedIds.S, new Tuple(3,2) },
{ CoolerMasterLedIds.D, new Tuple(3,3) },
{ CoolerMasterLedIds.F, new Tuple(3,4) },
};
private static readonly Dictionary> MasterKeysL_EU = new Dictionary>
{
{ CoolerMasterLedIds.A, new Tuple(3,1) },
{ CoolerMasterLedIds.S, new Tuple(3,2) },
{ CoolerMasterLedIds.D, new Tuple(3,3) },
{ CoolerMasterLedIds.F, new Tuple(3,4) },
};
private static readonly Dictionary> MasterKeysM_US = new Dictionary>
{
{ CoolerMasterLedIds.A, new Tuple(3,1) },
{ CoolerMasterLedIds.S, new Tuple(3,2) },
{ CoolerMasterLedIds.D, new Tuple(3,3) },
{ CoolerMasterLedIds.F, new Tuple(3,4) },
};
private static readonly Dictionary> MasterKeysM_EU = new Dictionary>
{
{ CoolerMasterLedIds.A, new Tuple(3,1) },
{ CoolerMasterLedIds.S, new Tuple(3,2) },
{ CoolerMasterLedIds.D, new Tuple(3,3) },
{ CoolerMasterLedIds.F, new Tuple(3,4) },
};
private static readonly Dictionary> MasterKeysS_US = new Dictionary>
{
{ CoolerMasterLedIds.A, new Tuple(3,1) },
{ CoolerMasterLedIds.S, new Tuple(3,2) },
{ CoolerMasterLedIds.D, new Tuple(3,3) },
{ CoolerMasterLedIds.F, new Tuple(3,4) },
};
private static readonly Dictionary> MasterKeysS_EU = new Dictionary>
{
{ CoolerMasterLedIds.A, new Tuple(3,1) },
{ CoolerMasterLedIds.S, new Tuple(3,2) },
{ CoolerMasterLedIds.D, new Tuple(3,3) },
{ CoolerMasterLedIds.F, new Tuple(3,4) },
};
///
/// Contains all the hardware-id mappings for CoolerMaster devices.
///
// ReSharper disable once InconsistentNaming
public static readonly Dictionary>>> Mapping =
new Dictionary>>>
{
{ CoolerMasterDevicesIndexes.MasterKeys_L, new Dictionary>>
{
{ CoolerMasterPhysicalKeyboardLayout.US, MasterKeysL_US },
{ CoolerMasterPhysicalKeyboardLayout.EU, MasterKeysL_EU }
}
},
{ CoolerMasterDevicesIndexes.MasterKeys_M, new Dictionary>>
{
{ CoolerMasterPhysicalKeyboardLayout.US, MasterKeysM_US },
{ CoolerMasterPhysicalKeyboardLayout.EU, MasterKeysM_EU }
}
},
{ CoolerMasterDevicesIndexes.MasterKeys_S, new Dictionary>>
{
{ CoolerMasterPhysicalKeyboardLayout.US, MasterKeysS_US },
{ CoolerMasterPhysicalKeyboardLayout.EU, MasterKeysS_EU }
}
},
{ CoolerMasterDevicesIndexes.MasterKeys_L_White, new Dictionary>>
{
{ CoolerMasterPhysicalKeyboardLayout.US, MasterKeysL_US },
{ CoolerMasterPhysicalKeyboardLayout.EU, MasterKeysL_EU }
}
},
{ CoolerMasterDevicesIndexes.MasterKeys_M_White, new Dictionary>>
{
{ CoolerMasterPhysicalKeyboardLayout.US, MasterKeysM_US },
{ CoolerMasterPhysicalKeyboardLayout.EU, MasterKeysM_EU }
}
},
{ CoolerMasterDevicesIndexes.MasterKeys_S_White, new Dictionary>>
{
{ CoolerMasterPhysicalKeyboardLayout.US, MasterKeysS_US },
{ CoolerMasterPhysicalKeyboardLayout.EU, MasterKeysS_EU }
}
},
};
#endregion
}
}