class QPanda::HadamardQCircuit¶
Hadamard quantum circuit program.
#include <QCircuit.h> class HadamardQCircuit: public QPanda::QCircuit { public: // construction HadamardQCircuit(QVec& pQubitVector); };
Inherited Members¶
public: // methods virtual NodeIter getFirstNodeIter() = 0; virtual NodeIter getLastNodeIter() = 0; virtual NodeIter getEndNodeIter() = 0; virtual NodeIter getHeadNodeIter() = 0; virtual NodeIter insertQNode(const NodeIter&, std::shared_ptr<QNode>) = 0; virtual NodeIter deleteQNode(NodeIter&) = 0; virtual void pushBackNode(std::shared_ptr<QNode>) = 0; virtual bool isDagger() const = 0; virtual bool getControlVector(QVec&) = 0; virtual void setDagger(bool isDagger) = 0; virtual void setControl(QVec) = 0; virtual void clearControl() = 0; virtual size_t get_used_qubits(QVec&) const = 0; virtual size_t get_qgate_num() = 0; std::shared_ptr<AbstractQuantumCircuit> getImplementationPtr(); virtual void pushBackNode(std::shared_ptr<QNode>); template <typename T> QCircuit& operator << (T node); virtual QCircuit dagger(); virtual QCircuit control(const QVec); NodeType getNodeType() const; virtual bool isDagger() const; virtual bool getControlVector(QVec&); virtual NodeIter getFirstNodeIter(); virtual NodeIter getLastNodeIter(); virtual NodeIter getEndNodeIter(); virtual NodeIter getHeadNodeIter(); virtual NodeIter insertQNode(const NodeIter&, std::shared_ptr<QNode>); virtual NodeIter deleteQNode(NodeIter&); bool is_empty(); virtual void setDagger(bool isDagger); virtual void setControl(const QVec); virtual size_t get_used_qubits(QVec&) const; virtual size_t get_qgate_num();