.. index:: pair: class; QPanda::OriginQubitPoolv2 .. _doxid-class_q_panda_1_1_origin_qubit_poolv2: class QPanda::OriginQubitPoolv2 =============================== .. toctree:: :hidden: Overview ~~~~~~~~ Implementation class of :ref:`QubitPool `. :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class OriginQubitPoolv2: public :ref:`QPanda::QubitPool` { public: // construction :target:`OriginQubitPoolv2`(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_poolv2: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Implementation class of :ref:`QubitPool `. Methods ------- .. index:: pair: function; clearAll .. _doxid-class_q_panda_1_1_origin_qubit_poolv2_1a2a3a5dfdc29c871efb978ef0c3167a24: .. 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_poolv2_1a6544b917f0e7b8a27c948b4beb84dd60: .. 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_poolv2_1a99bdb2b34f6d55e74418cd416b708b7b: .. 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_poolv2_1a7db69982229c5a11c39ea645861e6bbf: .. 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_poolv2_1ac142d7e11ffde291e8ddfba27b223e0b: .. 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_poolv2_1a10ca7ae8cde018daf296d9074a30a2c5: .. 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_poolv2_1a6ccba68bdfd98c0773efe2910224a47f: .. 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_poolv2_1ae6ea9cb3db525cb4b39832192b5d1a14: .. 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_poolv2_1a299a96ee5241fa63805dec2733118d56: .. 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_poolv2_1a34b9a22f99fb9496083464c6da189d73: .. 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_poolv2_1aba28f1b43496769f54a532d9d5a0a434: .. 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