private ushort CompressColourAndValue(FrenchCardColour colour, byte cardNumber) { // bitformat: cccc cccc vvvv vvvv return((ushort)(((ushort)colour << 8) | (cardNumber << 1))); }
private void DecompressValue(ushort val, out FrenchCardColour colour, out byte number) { colour = (FrenchCardColour)((val >> 8) & 0xf); number = (byte)((val >> 1) & 0xf); }
private FrenchCardType(FrenchCardColour colour, byte cardNumber) { m_val = CompressColourAndValue(colour, cardNumber); m_name = GetCardName(m_val); }