.. index:: pair: class; QPanda::OriginQubitPoolv1 .. _doxid-class_q_panda_1_1_origin_qubit_poolv1: class QPanda::OriginQubitPoolv1 =============================== .. toctree:: :hidden: Overview ~~~~~~~~ Implementation class of :ref:`QubitPool `. :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class OriginQubitPoolv1: public :ref:`QPanda::QubitPool` { public: // construction :target:`OriginQubitPoolv1`(size_t maxQubit); // methods virtual void :ref:`clearAll`(); virtual size_t :ref:`getMaxQubit`() const; virtual size_t :ref:`getIdleQubit`() const; virtual size_t :ref:`get_max_usedqubit_addr`() const; virtual :ref:`Qubit`* :ref:`allocateQubit`(); virtual :ref:`Qubit`* :ref:`allocateQubitThroughPhyAddress`(size_t); virtual :ref:`Qubit`* :ref:`allocateQubitThroughVirAddress`(size_t qubit_num); virtual void :ref:`Free_Qubit`(:ref:`Qubit`*); virtual size_t :ref:`getPhysicalQubitAddr`(:ref:`Qubit`*); virtual size_t :ref:`getVirtualQubitAddress`(:ref:`Qubit`*) const; virtual size_t :ref:`get_allocate_qubits`(std::vector<:ref:`Qubit`*>&) const; }; Inherited Members ----------------- .. ref-code-block:: cpp :class: doxyrest-overview-inherited-code-block public: // methods virtual size_t :ref:`getMaxQubit`() const = 0; virtual size_t :ref:`get_max_usedqubit_addr`() const = 0; virtual size_t :ref:`getIdleQubit`() const = 0; virtual :ref:`Qubit`* :ref:`allocateQubit`() = 0; virtual :ref:`Qubit`* :ref:`allocateQubitThroughPhyAddress`(size_t) = 0; virtual :ref:`Qubit`* :ref:`allocateQubitThroughVirAddress`(size_t qubit_num) = 0; virtual void :ref:`Free_Qubit`(:ref:`Qubit`*) = 0; virtual void :ref:`clearAll`() = 0; virtual size_t :ref:`getPhysicalQubitAddr`(:ref:`Qubit`*) = 0; virtual size_t :ref:`getVirtualQubitAddress`(:ref:`Qubit`*) const = 0; virtual size_t :ref:`get_allocate_qubits`(std::vector<:ref:`Qubit`*>&) const = 0; .. _details-class_q_panda_1_1_origin_qubit_poolv1: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Implementation class of :ref:`QubitPool `. Methods ------- .. index:: pair: function; clearAll .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a37cea3a8205698740f12ff1cb5d2d90a: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual void clearAll() clear the :ref:`PhysicalQubit ` vector .. index:: pair: function; getMaxQubit .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1aabd1df8f128dd6dd1f62e2109faf100a: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual size_t getMaxQubit() const get size of the :ref:`PhysicalQubit ` vector .. rubric:: Returns: size_t .. index:: pair: function; getIdleQubit .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a9de8a59eb256972bf1ec086ff64c97f6: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual size_t getIdleQubit() const get size of the idle position .. rubric:: Returns: size_t .. index:: pair: function; get_max_usedqubit_addr .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a901204b9dbc3eb83d80792bee6064aa0: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual size_t get_max_usedqubit_addr() const Gets the largest address in the used physical qubit. .. rubric:: Returns: size_t .. index:: pair: function; allocateQubit .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a3890f2f8d63f49fef7597b3d81579718: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual :ref:`Qubit`* allocateQubit() allocate a :ref:`Qubit ` .. rubric:: Returns: Qubit\* .. index:: pair: function; allocateQubitThroughPhyAddress .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a9b8ff5635e9a435ba88ab6a7e08b4c94: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual :ref:`Qubit`* allocateQubitThroughPhyAddress(size_t) allocate a :ref:`Qubit ` through physical address .. rubric:: Returns: Qubit\* .. index:: pair: function; allocateQubitThroughVirAddress .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a0c696701f0f3e5958f3ebb787727006f: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual :ref:`Qubit`* allocateQubitThroughVirAddress(size_t qubit_num) allocate a :ref:`Qubit ` through virtual address .. rubric:: Returns: Qubit\* .. index:: pair: function; Free_Qubit .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a5dcba974f17441bd48ff32a54533e264: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual void Free_Qubit(:ref:`Qubit`*) free a :ref:`Qubit ` .. index:: pair: function; getPhysicalQubitAddr .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1aac993411b59fa1586d3a185e7b8c7619: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual size_t getPhysicalQubitAddr(:ref:`Qubit`*) get physical qubit address .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - Qubit\* - .. rubric:: Returns: size_t .. index:: pair: function; getVirtualQubitAddress .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a6d77800cedabe868718ee746413b0920: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual size_t getVirtualQubitAddress(:ref:`Qubit`*) const get virtual qubit address .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - Qubit\* - .. rubric:: Returns: size_t .. index:: pair: function; get_allocate_qubits .. _doxid-class_q_panda_1_1_origin_qubit_poolv1_1a563956bccc5813575e5e5380faa94f85: .. ref-code-block:: cpp :class: doxyrest-title-code-block virtual size_t get_allocate_qubits(std::vector<:ref:`Qubit`*>&) const get allocate qubits .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - QVec& - .. rubric:: Returns: size_t