.. index:: pair: class; QPanda::ExGridDevice .. _doxid-class_q_panda_1_1_ex_grid_device: class QPanda::ExGridDevice ========================== .. toctree:: :hidden: Overview ~~~~~~~~ .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class ExGridDevice: public :ref:`QPanda::BasicGridDevice` { public: // construction :ref:`ExGridDevice`(int m, int n, std::vector>& qpairs); }; 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`(); .. _details-class_q_panda_1_1_ex_grid_device: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Construction ------------ .. index:: pair: function; ExGridDevice .. _doxid-class_q_panda_1_1_ex_grid_device_1a3aa664753fac227f8779d87cee4dc032: .. ref-code-block:: cpp :class: doxyrest-title-code-block ExGridDevice(int m, int n, std::vector>& qpairs) constructor constructor whose elements are like .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - m - the grid side length * - n - the grid side length * - qpairs - set of adjacent qubit pairs