class QPanda::QWhileProg

Overview

Proxy class of quantum while program. More…

#include <ControlFlow.h>

class QWhileProg: public QPanda::AbstractControlFlowNode
{
public:
    // construction

    QWhileProg(const QWhileProg&);
    QWhileProg(std::shared_ptr<AbstractControlFlowNode> qwhile);

    QWhileProg(
        ClassicalCondition,
        QProg
        );

    // methods

    std::shared_ptr<AbstractControlFlowNode> getImplementationPtr();
    virtual NodeType getNodeType() const;
    virtual std::shared_ptr<QNode> getTrueBranch() const;
    virtual std::shared_ptr<QNode> getFalseBranch() const;
    virtual ClassicalCondition getCExpr();
    virtual ClassicalCondition getClassicalCondition();
};

Inherited Members

public:
    // methods

    virtual std::shared_ptr<QNode> getTrueBranch() const = 0;
    virtual std::shared_ptr<QNode> getFalseBranch() const = 0;
    virtual void setTrueBranch(QProg node) = 0;
    virtual void setFalseBranch(QProg node) = 0;
    virtual ClassicalCondition getCExpr() = 0;

Detailed Documentation

Proxy class of quantum while program.

Methods

virtual std::shared_ptr<QNode> getTrueBranch() const

Get true branch.

Returns:

std::shared_ptr<QNode>

virtual std::shared_ptr<QNode> getFalseBranch() const

Get false branch.

Returns:

std::shared_ptr<QNode>

virtual ClassicalCondition getCExpr()

Get classical expr.

Returns:

ClassicalCondition ptr