/// <summary> /// Applies a set of bits to an existing set, overriding any bits that aren't set /// to "unspecified" in the input. /// </summary> public void Apply(TriState16 overrides) { ushort mask = (ushort)~(overrides.mZero | overrides.mOne); mZero = (ushort)((mZero & mask) | overrides.mZero); mOne = (ushort)((mOne & mask) | overrides.mOne); }
/// <summary> /// Merges bit states. /// </summary> /// <param name="other">Value to merge in.</param> public void Merge(TriState16 other) { //mValue |= other.mValue; mZero |= other.mZero; mOne |= other.mOne; }