ProvSQL C/C++ API
Adding support for provenance and uncertainty management to PostgreSQL databases
Loading...
Searching...
No Matches
Circuit.hpp File Reference

Out-of-line template method implementations for Circuit<gateType>. More...

#include "Circuit.h"
Include dependency graph for Circuit.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Detailed Description

Out-of-line template method implementations for Circuit<gateType>.

This file provides the definitions of the template methods declared in Circuit.h that cannot be placed in a .cpp file (since they must be instantiated by the compiler in each translation unit that uses them).

Implemented methods:

  • hasGate(): UUID membership test.
  • getGate(): UUID → gate_t lookup, allocating a new gate on miss.
  • getUUID(): gate_t → UUID string lookup.
  • addGate(): default gate allocation (extends gates and wires vectors).
  • setGate(gateType): allocate a new gate and set its type.
  • setGate(const uuid&, gateType): create/update a UUID-named gate.
  • addWire(): append a directed edge.

Included by subclass headers that need these implementations (e.g. BooleanCircuit.h, DotCircuit.h).

Definition in file Circuit.hpp.