public static byte ConfigureOperatingMode(MagnetometerOperatingMode operatingMode = MagnetometerOperatingMode.ContinuousConversion)
        {
            var bitArray = new BitArray(Constants.ByteBitLength);

            SetOperatingMode(operatingMode, bitArray);

            return(ConversionHelper.GetByteValueFromBitArray(bitArray));
        }
        private static void SetOperatingMode(MagnetometerOperatingMode operatingMode, BitArray bitArray)
        {
            bool[] operatingModeBitValues;

            switch (operatingMode)
            {
            case MagnetometerOperatingMode.ContinuousConversion:
            default:
                operatingModeBitValues = new bool[] { false, false };
                break;

            case MagnetometerOperatingMode.SingleConversion:
                operatingModeBitValues = new bool[] { true, false };
                break;

            case MagnetometerOperatingMode.PowerDown:
                operatingModeBitValues = new bool[] { true, true };
                break;
            }

            ConversionHelper.SetBitArrayValues(bitArray, operatingModeBitValues,
                                               operatingModeBeginIndex, operatingModeEndIndex);
        }