Skip to content

Latest commit

 

History

History
326 lines (190 loc) · 9.76 KB

class_QPanda_DecomposeMultipleControlQGate.rst

File metadata and controls

326 lines (190 loc) · 9.76 KB

pair: class; QPanda::DecomposeMultipleControlQGate

class QPanda::DecomposeMultipleControlQGate

Overview

Decomposing multiple control qgate in qprog. More...<details-class_q_panda_1_1_decompose_multiple_control_q_gate>

cpp

#include <TransformDecomposition.h>

class DecomposeMultipleControlQGate: public QPanda::TraversalInterface<doxid-class_q_panda_1_1_traversal_interface> { public: // methods

void execute<doxid-class_q_panda_1_1_decompose_multiple_control_q_gate_1a66a76619cb41414c30dd5bbd8531b125>(std::shared_ptr<AbstractQGateNode<doxid-class_q_panda_1_1_abstract_q_gate_node>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node); virtual void execute<doxid-class_q_panda_1_1_decompose_multiple_control_q_gate_1a9ef2976061a45d3a043af3332b65de01>(std::shared_ptr<AbstractQuantumMeasure<doxid-class_q_panda_1_1_abstract_quantum_measure>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node); virtual void execute<doxid-class_q_panda_1_1_decompose_multiple_control_q_gate_1adb09d8b2c40261b28f9eb6c265c01b7f>(std::shared_ptr<AbstractQuantumReset<doxid-class_q_panda_1_1_abstract_quantum_reset>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node); void execute<doxid-class_q_panda_1_1_decompose_multiple_control_q_gate_1a9cafff4f1e94dfe8d6289b1a15597049>(std::shared_ptr<AbstractQuantumCircuit<doxid-class_q_panda_1_1_abstract_quantum_circuit>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node); virtual void execute<doxid-class_q_panda_1_1_decompose_multiple_control_q_gate_1af3bcaa1c0622ee045950c41a262030bd>(std::shared_ptr<AbstractControlFlowNode<doxid-class_q_panda_1_1_abstract_control_flow_node>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node); virtual void execute<doxid-class_q_panda_1_1_decompose_multiple_control_q_gate_1a87ee2df6bd565aae8605c2e19392b761>(std::shared_ptr<AbstractQuantumProgram<doxid-class_q_panda_1_1_abstract_quantum_program>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node); virtual void execute<doxid-class_q_panda_1_1_decompose_multiple_control_q_gate_1aa64bfd84557ad07351880cacd30c5546>(std::shared_ptr<AbstractClassicalProg<doxid-class_q_panda_1_1_abstract_classical_prog>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node);

};

Inherited Members

cpp

public:

// methods

virtual void execute<doxid-class_q_panda_1_1_traversal_interface_1adb53e4c20d48a0efd6e377680d7f0988>(

std::shared_ptr<AbstractQGateNode<doxid-class_q_panda_1_1_abstract_q_gate_node>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node, Args&&... func_args );

virtual void execute<doxid-class_q_panda_1_1_traversal_interface_1aed584073b781c9a5c6441b08b14afc3d>(

std::shared_ptr<AbstractQuantumMeasure<doxid-class_q_panda_1_1_abstract_quantum_measure>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node, Args&&... func_args );

virtual void execute<doxid-class_q_panda_1_1_traversal_interface_1aadbf69a810033196de1790d3f362ef7a>(

std::shared_ptr<AbstractQuantumReset<doxid-class_q_panda_1_1_abstract_quantum_reset>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node, Args&&... func_args );

virtual void execute<doxid-class_q_panda_1_1_traversal_interface_1aab65fda71b8e1f719bc4b7bdd70a10e7>(

std::shared_ptr<AbstractControlFlowNode<doxid-class_q_panda_1_1_abstract_control_flow_node>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node, Args&&... func_args );

virtual void execute<doxid-class_q_panda_1_1_traversal_interface_1ab452f71d25eb3354d46346694ff82db7>(

std::shared_ptr<AbstractQuantumCircuit<doxid-class_q_panda_1_1_abstract_quantum_circuit>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node, Args&&... func_args );

virtual void execute<doxid-class_q_panda_1_1_traversal_interface_1a4e97902dc8b42d5f5f50d790d11f1517>(

std::shared_ptr<AbstractQuantumProgram<doxid-class_q_panda_1_1_abstract_quantum_program>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node, Args&&... func_args );

virtual void execute<doxid-class_q_panda_1_1_traversal_interface_1aa311fe1c6abc46d84d90d6f412be063a>(

std::shared_ptr<AbstractClassicalProg<doxid-class_q_panda_1_1_abstract_classical_prog>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node, Args&&... func_args );

Detailed Documentation

Decomposing multiple control qgate in qprog.

Methods

pair: function; execute

cpp

void execute(std::shared_ptr<AbstractQGateNode<doxid-class_q_panda_1_1_abstract_q_gate_node>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node)

Execution traversal qgatenode.

Parameters:

Returns:

void

pair: function; execute

cpp

virtual void execute(std::shared_ptr<AbstractQuantumMeasure<doxid-class_q_panda_1_1_abstract_quantum_measure>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node)

Execution traversal measure node.

Parameters:

Returns:

void

pair: function; execute

cpp

virtual void execute(std::shared_ptr<AbstractQuantumReset<doxid-class_q_panda_1_1_abstract_quantum_reset>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node)

Execution traversal reset node.

Parameters:

Returns:

void

pair: function; execute

cpp

void execute(std::shared_ptr<AbstractQuantumCircuit<doxid-class_q_panda_1_1_abstract_quantum_circuit>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node)

Execution traversal qcircuit.

Parameters:

Returns:

void

pair: function; execute

cpp

virtual void execute(std::shared_ptr<AbstractControlFlowNode<doxid-class_q_panda_1_1_abstract_control_flow_node>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node)

Execution traversal control flow node.

Parameters:

Returns:

void

pair: function; execute

cpp

virtual void execute(std::shared_ptr<AbstractQuantumProgram<doxid-class_q_panda_1_1_abstract_quantum_program>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node)

Execution traversal qprog.

Parameters:

Returns:

void

pair: function; execute

cpp

virtual void execute(std::shared_ptr<AbstractClassicalProg<doxid-class_q_panda_1_1_abstract_classical_prog>> cur_node, std::shared_ptr<QNode<doxid-class_q_panda_1_1_q_node>> parent_node)

Execution traversal qprog.

Parameters:

Returns:

void