#pragma once #include "Memory.h" class QuantumCircuitElement { public: enum class Type { INPUT_TERMINAL, OUTPUT_TERMINAL, WIRE, GATE, UNKNOWN }; virtual ~QuantumCircuitElement() = default; virtual bool isFullyConnected() const = 0; virtual QuantumCircuitElement::Type getType() const = 0; };