class QPanda::OriginCMem¶
Overview¶
Implementation class of CMem. More…
#include <OriginQuantumMachine.h> class OriginCMem: public QPanda::CMem { public: // methods static OriginCMem* get_instance(); CBit* get_cbit_by_addr(size_t caddr); size_t get_capacity(); void set_capacity(size_t capacity_num); virtual CBit* Allocate_CBit(); virtual CBit* Allocate_CBit(size_t); virtual size_t getMaxMem() const; virtual size_t getIdleMem() const; virtual void Free_CBit(CBit*); virtual void clearAll(); virtual size_t get_allocate_cbits(std::vector<CBit*>&); CBit* cAlloc(); CBit* cAlloc(size_t); std::vector<ClassicalCondition> cAllocMany(size_t); void cFree(CBit*); void cFreeAll(std::vector<CBit*>&); };
Inherited Members¶
public: // methods virtual CBit* Allocate_CBit() = 0; virtual CBit* Allocate_CBit(size_t) = 0; virtual size_t getMaxMem() const = 0; virtual size_t getIdleMem() const = 0; virtual void Free_CBit(CBit*) = 0; virtual void clearAll() = 0; virtual size_t get_allocate_cbits(std::vector<CBit*>&) = 0;
Detailed Documentation¶
Implementation class of CMem.
Methods¶
virtual CBit* Allocate_CBit()
allocate a CBit
Returns:
CBit*
virtual CBit* Allocate_CBit(size_t)
allocate a CBit by bit address
Returns:
CBit*
virtual size_t getMaxMem() const
get size of the CBit vector
Returns:
size_t
virtual size_t getIdleMem() const
get size of the idle position
Returns:
size_t
virtual void Free_CBit(CBit*)
free a CBit
Parameters:
CBit* |
virtual void clearAll()
clear the CBit vector
virtual size_t get_allocate_cbits(std::vector<CBit*>&)
get allocate cbits
Parameters:
std::vector<CBit |
*>& |
Returns:
size_t allocate cbits size