Helper class for adding lines in an easier way. More...
Public Member Functions | |
control_line_adder (gate &g) | |
Default constructor. More... | |
target_line_adder | operator() () |
Add no control line. More... | |
target_line_adder | operator() (const gate::line &l1) |
Add one control line. More... | |
target_line_adder | operator() (const gate::line &l1, const gate::line &l2) |
Add two control lines. More... | |
target_line_adder | operator() (const gate::line &l1, const gate::line &l2, const gate::line &l3) |
Add three control lines. More... | |
target_line_adder | operator() (const gate::line &l1, const gate::line &l2, const gate::line &l3, const gate::line &l4) |
Add four control lines. More... | |
target_line_adder | operator() (const gate::line &l1, const gate::line &l2, const gate::line &l3, const gate::line &l4, const gate::line &l5) |
Add five control lines. More... | |
target_line_adder | operator() (const gate::line &l1, const gate::line &l2, const gate::line &l3, const gate::line &l4, const gate::line &l5, const gate::line &l6) |
Add six control lines. More... | |
target_line_adder | operator() (const gate::line &l1, const gate::line &l2, const gate::line &l3, const gate::line &l4, const gate::line &l5, const gate::line &l6, const gate::line &l7) |
Add seven control lines. More... | |
target_line_adder | operator() (const gate::line &l1, const gate::line &l2, const gate::line &l3, const gate::line &l4, const gate::line &l5, const gate::line &l6, const gate::line &l7, const gate::line &l8) |
Add eight control lines. More... | |
target_line_adder | operator() (const gate::line &l1, const gate::line &l2, const gate::line &l3, const gate::line &l4, const gate::line &l5, const gate::line &l6, const gate::line &l7, const gate::line &l8, const gate::line &l9) |
Add nine control lines. More... | |
Helper class for adding lines in an easier way.
This class should not be used stand alone but just with the add_gate methods designed for this purpose. See also Adding Gates.
|
explicit |
Default constructor.
g | Gate, to which control lines should be added |
target_line_adder operator() | ( | ) |
target_line_adder operator() | ( | const gate::line & | l1 | ) |
Add one control line.
l1 | First control line |
target_line_adder operator() | ( | const gate::line & | l1, |
const gate::line & | l2 | ||
) |
Add two control lines.
l1 | First control line |
l2 | Second control line |
target_line_adder operator() | ( | const gate::line & | l1, |
const gate::line & | l2, | ||
const gate::line & | l3 | ||
) |
Add three control lines.
l1 | First control line |
l2 | Second control line |
l3 | Second control line |
target_line_adder operator() | ( | const gate::line & | l1, |
const gate::line & | l2, | ||
const gate::line & | l3, | ||
const gate::line & | l4 | ||
) |
Add four control lines.
l1 | First control line |
l2 | Second control line |
l3 | Second control line |
l4 | Fourth control line |
target_line_adder operator() | ( | const gate::line & | l1, |
const gate::line & | l2, | ||
const gate::line & | l3, | ||
const gate::line & | l4, | ||
const gate::line & | l5 | ||
) |
Add five control lines.
l1 | First control line |
l2 | Second control line |
l3 | Second control line |
l4 | Fourth control line |
l5 | Fifth control line |
target_line_adder operator() | ( | const gate::line & | l1, |
const gate::line & | l2, | ||
const gate::line & | l3, | ||
const gate::line & | l4, | ||
const gate::line & | l5, | ||
const gate::line & | l6 | ||
) |
Add six control lines.
l1 | First control line |
l2 | Second control line |
l3 | Second control line |
l4 | Fourth control line |
l5 | Fifth control line |
l6 | Sixth control line |
target_line_adder operator() | ( | const gate::line & | l1, |
const gate::line & | l2, | ||
const gate::line & | l3, | ||
const gate::line & | l4, | ||
const gate::line & | l5, | ||
const gate::line & | l6, | ||
const gate::line & | l7 | ||
) |
Add seven control lines.
l1 | First control line |
l2 | Second control line |
l3 | Second control line |
l4 | Fourth control line |
l5 | Fifth control line |
l6 | Sixth control line |
l7 | Seventh control line |
target_line_adder operator() | ( | const gate::line & | l1, |
const gate::line & | l2, | ||
const gate::line & | l3, | ||
const gate::line & | l4, | ||
const gate::line & | l5, | ||
const gate::line & | l6, | ||
const gate::line & | l7, | ||
const gate::line & | l8 | ||
) |
Add eight control lines.
l1 | First control line |
l2 | Second control line |
l3 | Second control line |
l4 | Fourth control line |
l5 | Fifth control line |
l6 | Sixth control line |
l7 | Seventh control line |
l8 | Eighth control line |
target_line_adder operator() | ( | const gate::line & | l1, |
const gate::line & | l2, | ||
const gate::line & | l3, | ||
const gate::line & | l4, | ||
const gate::line & | l5, | ||
const gate::line & | l6, | ||
const gate::line & | l7, | ||
const gate::line & | l8, | ||
const gate::line & | l9 | ||
) |
Add nine control lines.
l1 | First control line |
l2 | Second control line |
l3 | Second control line |
l4 | Fourth control line |
l5 | Fifth control line |
l6 | Sixth control line |
l7 | Seventh control line |
l8 | Eighth control line |
l9 | Ninth control line |