#include <Ca.h>

You want to implement this interface to define your own circuit, usually not directly, but using same abstract base class which implements the common part of your circuit.
Definition at line 174 of file Ca.h.
Public Member Functions | |
| virtual | ~IGate () |
| virtual IGate * | clone () const =0 |
| Each final derivation of IGate has to override this method with self-cloning method to keep the simulator working. | |
| virtual size_t | nInputs () const =0 |
| Override this method to return number of circuit's input signals. | |
| virtual size_t | nOutputs () const =0 |
| Override this method to return number of circuit's output signals. | |
| virtual TBus | operator[] (TBus in) const =0 |
| (the core method of IGate interface) Override it to define circuit's behavior. | |
| virtual IGate* clone | ( | ) | const [pure virtual] |
Each final derivation of IGate has to override this method with self-cloning method to keep the simulator working.
If you find a way how to do it generically at the top level, please send a patch to nucad@dudka.cz.
Implemented in MuxGate< 3 >, MuxGate< 6 >, BusGate, CrossGate, MulGate, AndGate, OrGate, and XorGate.
Referenced by CaEvaluator::CaEvaluator().

| virtual size_t nInputs | ( | ) | const [pure virtual] |
Override this method to return number of circuit's input signals.
Implemented in AbstractGate, AbstractGate< N, 1 >, AbstractGate< N, N >, AbstractGate< 6, 1 >, and AbstractGate< 3, 1 >.
| virtual size_t nOutputs | ( | ) | const [pure virtual] |
Override this method to return number of circuit's output signals.
Implemented in AbstractGate, AbstractGate< N, 1 >, AbstractGate< N, N >, AbstractGate< 6, 1 >, and AbstractGate< 3, 1 >.
(the core method of IGate interface) Override it to define circuit's behavior.
| in | Input passed to gate. |
Implemented in MuxGate< 3 >, MuxGate< 6 >, BusGate, CrossGate, MulGate, and CommonGateBase.
1.5.4