/// <summary> /// Instancia um novo objecto do tipo <see cref="BooleanCombination"/>. /// </summary> /// <param name="logicInput">A combinação lógica de entrada.</param> /// <param name="logicOutput">The logic output.</param> /// <exception cref="ArgumentNullException">logicInput</exception> internal BooleanCombination(LogicCombinationBitArray logicInput, EBooleanMinimalFormOutStatus logicOutput) { if (logicInput == null) { throw new ArgumentNullException("logicInput"); } else { this.logicInput = logicInput; this.logicOutput = logicOutput; } }
/// <summary> /// Adiciona uma combinação à lista de entrada/saída. /// </summary> /// <param name="array">O vector de bits que representa uma entrada.</param> /// <param name="outputStatus">O estado de saída associado à entrada.</param> /// <returns>A representação interna.</returns> /// <exception cref="ArgumentNullException">Se o vector de bits for nulo.</exception> public BooleanCombination Add( LogicCombinationBitArray array, EBooleanMinimalFormOutStatus outputStatus) { if (array == null) { throw new ArgumentNullException("array"); } else { var result = new BooleanCombination( array, outputStatus); this.combinationElements.Add(result); this.maxCombinationsLength = Math.Max( this.maxCombinationsLength, array.Length); return(result); } }