/// <summary> /// Inverses the value of a specific bit from "0" to "1" or from "1" to "0" /// </summary> /// <param name="position">Position of the bit to be set</param> public void BitFlip(Enums.Logfield position) { bool value = Convert.ToBoolean(BitData[(int)position - 1]); value = !value; BitSet(position, value); }
/// <summary> /// Gets the value of a specific bit /// </summary> /// <param name="position">Position of the bit to be tested</param> /// <returns></returns> public bool BitTest(Enums.Logfield position) { bool result = (BitData[(int)position - 1]) != '0'; return(result); }
/// <summary> /// Sets a specific bit to a specific value. /// </summary> /// <param name="position">Position of the bit to be set</param> /// <param name="value">Value of the bit</param> public void BitSet(Enums.Logfield position, bool value) { char[] BitDataArray = BitData.ToCharArray(); BitDataArray[(int)position - 1] = value == true ? '1' : '0'; BitData = new string(BitDataArray); }