class QPanda::QCircuit

Overview

Quantum circuit basic abstract class. More...

Inherited Members

Detailed Documentation

Quantum circuit basic abstract class.

Methods

Insert new Node at the end of current quantum circuit node.

Parameters:

QNode* quantum node

Returns:

void

See also:

QNode

Insert new Node at the end of current node.

Parameters:

node QGate/QCircuit

Returns:

QPanda::QCircuit & quantum circuit

See also:

QNode

Get a dagger circuit base on current quantum circuit node.

Returns:

QPanda::QCircuit quantum circuit

Get a control quantumgate base on current quantum circuit node.

Parameters:

QVec control qubits vector

Returns:

QPanda::QCircuit quantum circuit

See also:

QVec

Get current node type.

Returns:

NodeType current node type

See also:

NodeType

Judge current quantum circuit is dagger.

Returns:

bool

Get control vector from current quantum circuit node.

Parameters:

QVec& qubits vector

Returns:

bool

See also:

QVec

Get the first NodeIter.

Returns:

NodeIter

Get the last NodeIter.

Returns:

NodeIter

Get the end NodeIter.

Returns:

NodeIter

Get the head NodeIter.

Returns:

NodeIter

Insert a new QNode at the location specified by NodeIter.

Parameters:

NodeIter& specified location
std::shared_ptr<QNode> Inserted QNode

Returns:

NodeIter

Delete a QNode at the location specified by NodeIter.

Parameters:

NodeIter& specified location

Returns:

NodeIter Deleted NodeIter

Set dagger to current quantum circuit.

Parameters:

bool is dagger

Set control qubits to current quantum circuit.

Parameters:

QVec control qubits vector

See also:

QVec

Get the used qubits for current quantum circuit.

Parameters:

QVec used qubits vector

Returns:

size_t

Get current quantum circuit qgate number.

Returns:

size_t