class QProgMap

#include <TensorNode.h>

class QProgMap
{
public:
    // fields

    size_t m_count {0};

    // construction

    QProgMap();
    QProgMap(const QProgMap& old);

    // methods

    size_t getMaxRank();
    size_t setMaxRank(size_t rank);
    void deleteMap();
    QProgMap& operator = (const QProgMap& old);
    VerticeMatrix* getVerticeMatrix();
    size_t getQubitVerticeCount(qsize_t qubit_num);
    void setQubitNum(size_t num);
    bool isEmptyQProg();
    size_t getQubitNum();
    edge_map_t* getEdgeMap();
    void clearVerticeValue();
    void clear();
    qsize_t getVerticeCount() const;
};