.. index:: pair: class; QPanda::UncompletedGridDevice .. _doxid-class_q_panda_1_1_uncompleted_grid_device: class QPanda::UncompletedGridDevice =================================== .. toctree:: :hidden: :ref:`UncompletedGridDevice ` is a derived class of :ref:`SimpleGridDevice ` Compared with :ref:`SimpleGridDevice `, some qubits are NOT AVAILABLE, but the adjacent relation is the same e.g. google Sycamore q54. .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class UncompletedGridDevice: public :ref:`QPanda::SimpleGridDevice` { public: // construction :target:`UncompletedGridDevice`( int m, int n, const bool* available_qubits ); // methods void :target:`resetAvailableQubits`(const bool* available_qubits); bool :target:`isQubitAvailable`( int i, int j ); }; Inherited Members ----------------- .. ref-code-block:: cpp :class: doxyrest-overview-inherited-code-block public: // structs struct :ref:`PhysicalQubit`; // methods void :ref:`clear`(); int :ref:`getM`(); int :ref:`getN`(); auto& :ref:`getQubit`(int i, int j); bool :ref:`canApplyGate`(int i1, int j1, int i2, int j2, int); bool :ref:`canApplyGate`(int i, int j, int); bool :ref:`canSwap`(int i1, int j1, int i2, int j2); void :ref:`applySingleGate`(int i, int j); void :ref:`applyGate`(int i1, int j1, int i2, int j2, int time); void :ref:`applyDoubleGate`(int i1, int j1, int i2, int j2); void :ref:`applySwap`(int i1, int j1, int i2, int j2); virtual bool :ref:`isNearBy`(int i1, int j1, int i2, int j2) = 0; virtual int :ref:`getDistance`(int i1, int j1, int i2, int j2) = 0; void :ref:`map`(int dest, int i, int j); void :ref:`resetTime`(); void :ref:`nextCycle`(); int :ref:`maxTime`(); int :ref:`getTime`(); bool :ref:`isQubitFree`(int i, int j); bool :ref:`isAllQubitFree`(); bool :ref:`isSimpleGridDevice`(); bool :ref:`isSupportSwapGate`(); virtual bool :ref:`isNearBy`(int i1, int j1, int i2, int j2); virtual int :ref:`getDistance`(int i1, int j1, int i2, int j2);