class QPanda::QCircuitParam

Overview

Circuit Parameter information. More…

#include <QCircuitInfo.h>

class QCircuitParam
{
public:
    // fields

    bool m_is_dagger;
    QVec m_control_qubits;

    // construction

    QCircuitParam();
    QCircuitParam(const QCircuitParam& rhs);

    // methods

    virtual std::shared_ptr<QCircuitParam> clone();
    void append_control_qubits(const QVec& ctrl_qubits);
    static QVec get_real_append_qubits(QVec append_qubits, QVec target_qubits);
};

// direct descendants

class QCirParamForDAG;

Detailed Documentation

Circuit Parameter information.

Fields

bool m_is_dagger

dagger information

QVec m_control_qubits

control Quantum bits

Construction

QCircuitParam()

Constructor of QCircuitParam.

QCircuitParam(const QCircuitParam& rhs)

copy constructor

Methods

virtual std::shared_ptr<QCircuitParam> clone()

clone

void append_control_qubits(const QVec& ctrl_qubits)

append control qubits

Parameters:

QVec&

control qubits

static QVec get_real_append_qubits(QVec append_qubits, QVec target_qubits)

get the real increased control qubits

Parameters:

QVec

increased control qubits, maybe some repeat exist

QVec

already controled qubits

Returns:

QVec the real increased control qubits