wiRedPanda
Logic Circuit Simulator
Loading...
Searching...
No Matches
StatusOps Namespace Reference

Functions

Status statusAnd (const Status a, const Status b)
 AND: Inactive dominates all; unknown propagates as-is.
Status statusAndAll (const QVector< Status > &inputs)
 Fold AND over a range. Inactive dominates.
Status statusNot (const Status a)
 NOT: inverts known values; Unknown -> Unknown, Error -> Error.
Status statusOr (const Status a, const Status b)
 OR: Active dominates all; unknown propagates as-is.
Status statusOrAll (const QVector< Status > &inputs)
 Fold OR over a range. Active dominates.
Status statusXor (const Status a, const Status b)
 XOR: requires all inputs known; any Unknown -> Unknown, any Error -> Error.
Status statusXorAll (const QVector< Status > &inputs)

Function Documentation

◆ statusAnd()

Status StatusOps::statusAnd ( const Status a,
const Status b )
inline

AND: Inactive dominates all; unknown propagates as-is.

Definition at line 26 of file StatusOps.h.

◆ statusAndAll()

Status StatusOps::statusAndAll ( const QVector< Status > & inputs)
inline

Fold AND over a range. Inactive dominates.

Definition at line 81 of file StatusOps.h.

Referenced by And::updateLogic(), and Nand::updateLogic().

◆ statusNot()

Status StatusOps::statusNot ( const Status a)
inline

NOT: inverts known values; Unknown -> Unknown, Error -> Error.

Definition at line 56 of file StatusOps.h.

Referenced by Nand::updateLogic(), Nor::updateLogic(), Not::updateLogic(), and Xnor::updateLogic().

◆ statusOr()

Status StatusOps::statusOr ( const Status a,
const Status b )
inline

OR: Active dominates all; unknown propagates as-is.

Definition at line 41 of file StatusOps.h.

◆ statusOrAll()

Status StatusOps::statusOrAll ( const QVector< Status > & inputs)
inline

Fold OR over a range. Active dominates.

Definition at line 100 of file StatusOps.h.

Referenced by Nor::updateLogic(), and Or::updateLogic().

◆ statusXor()

Status StatusOps::statusXor ( const Status a,
const Status b )
inline

XOR: requires all inputs known; any Unknown -> Unknown, any Error -> Error.

Definition at line 68 of file StatusOps.h.

◆ statusXorAll()

Status StatusOps::statusXorAll ( const QVector< Status > & inputs)
inline

Fold XOR (odd-parity) over a range. Any Unknown -> Unknown, any Error -> Error. Error takes priority over Unknown (consistent with statusAndAll/statusOrAll).

Definition at line 120 of file StatusOps.h.

Referenced by Xnor::updateLogic(), and Xor::updateLogic().