class QPanda::QProgToQuil¶
Overview¶
QuantumProg Transform To Quil instruction sets. More…
#include <QProgToQuil.h> class QProgToQuil: public QPanda::TraversalInterface { public: // construction QProgToQuil(QuantumMachine* quantum_machine); // methods virtual void transform(QProg& prog); virtual std::string getInsturctions(); void transformQProgByTraversalAlg(QProg* prog); virtual void execute( std::shared_ptr<AbstractQGateNode> cur_node, std::shared_ptr<QNode> parent_node, bool& ); virtual void execute( std::shared_ptr<AbstractQuantumMeasure> cur_node, std::shared_ptr<QNode> parent_node, bool& ); virtual void execute( std::shared_ptr<AbstractQuantumReset> cur_node, std::shared_ptr<QNode> parent_node, bool& ); virtual void execute( std::shared_ptr<AbstractControlFlowNode> cur_node, std::shared_ptr<QNode> parent_node, bool& ); virtual void execute( std::shared_ptr<AbstractQuantumCircuit> cur_node, std::shared_ptr<QNode> parent_node, bool& ); virtual void execute( std::shared_ptr<AbstractQuantumProgram> cur_node, std::shared_ptr<QNode> parent_node, bool& ); virtual void execute( std::shared_ptr<AbstractClassicalProg> cur_node, std::shared_ptr<QNode> parent_node, bool& ); };
Inherited Members¶
public: // methods virtual void execute( std::shared_ptr<AbstractQGateNode> cur_node, std::shared_ptr<QNode> parent_node, Args&&... func_args ); virtual void execute( std::shared_ptr<AbstractQuantumMeasure> cur_node, std::shared_ptr<QNode> parent_node, Args&&... func_args ); virtual void execute( std::shared_ptr<AbstractQuantumReset> cur_node, std::shared_ptr<QNode> parent_node, Args&&... func_args ); virtual void execute( std::shared_ptr<AbstractControlFlowNode> cur_node, std::shared_ptr<QNode> parent_node, Args&&... func_args ); virtual void execute( std::shared_ptr<AbstractQuantumCircuit> cur_node, std::shared_ptr<QNode> parent_node, Args&&... func_args ); virtual void execute( std::shared_ptr<AbstractQuantumProgram> cur_node, std::shared_ptr<QNode> parent_node, Args&&... func_args ); virtual void execute( std::shared_ptr<AbstractClassicalProg> cur_node, std::shared_ptr<QNode> parent_node, Args&&... func_args );
Detailed Documentation¶
QuantumProg Transform To Quil instruction sets.
Methods¶
virtual void transform(QProg& prog)
transform quantum program
Parameters:
QProg& |
quantum program |
Returns:
void
virtual std::string getInsturctions()
get Quil insturction set
Returns:
std::string
void transformQProgByTraversalAlg(QProg* prog)
Transform Quantum program by Traversal algorithm, refer to class Traversal.
Parameters:
QProg& |
quantum program |
Returns:
void