class QGATE_SPACE::OracularGate

#include <QuantumGate.h>

class OracularGate:
    public QGATE_SPACE::QuantumGate,
    public QGATE_SPACE::DynamicCreator,
    public QGATE_SPACE::DynamicCreator
{
public:
    // construction

    OracularGate(std::string name);
    OracularGate(QuantumGate* qgate_old);

    // methods

    std::string get_name() const;
    virtual int getOperationNum() const;
    virtual void getMatrix(QStat& matrix) const;
};

Inherited Members

public:
    // structs

    struct Register;

    // fields

    static Register m_register;

    // methods

    virtual int getOperationNum() const = 0;
    virtual void getMatrix(QStat& matrix) const = 0;
    virtual int getGateType() const;
    static T* CreateObject(Targs&&... args);