QuISP
Loading...
Searching...
No Matches
quisp::modules::BellPairStore Class Reference

#include <BellPairStore.h>

Collaboration diagram for quisp::modules::BellPairStore:

Public Member Functions

 BellPairStore (Logger::ILogger *logger=nullptr)
 
 ~BellPairStore ()
 
void eraseQubit (qrsa::IQubitRecord *const qubit)
 
void insertEntangledQubit (QNodeAddr partner_addr, qrsa::IQubitRecord *qubit)
 
qrsa::IQubitRecordfindQubit (QNIC_type qnic_type, QNicIndex qnic_index, QNodeAddr addr)
 
PartnerAddrQubitMapRange getBellPairsRange (QNIC_type qnic_type, QNicIndex qnic_index, QNodeAddr partner_addr)
 
std::string toString () const
 

Public Attributes

Logger::ILoggerlogger
 

Protected Attributes

std::map< ResourceKey, PartnerAddrQubitMap_resources
 

Detailed Description

this class contains the bell pair information for RuleEngine. this tracks the entangled qubit and its partner addr. RuleEngine recognizes a bell pair generated, store the information to this class. if RuleSet needs bell pair resource, RuleEngine takes a bell pair from this class.

Constructor & Destructor Documentation

◆ BellPairStore()

quisp::modules::BellPairStore::BellPairStore ( Logger::ILogger * logger = nullptr)

◆ ~BellPairStore()

quisp::modules::BellPairStore::~BellPairStore ( )

Member Function Documentation

◆ eraseQubit()

void quisp::modules::BellPairStore::eraseQubit ( qrsa::IQubitRecord *const qubit)

◆ findQubit()

qrsa::IQubitRecord * quisp::modules::BellPairStore::findQubit ( QNIC_type qnic_type,
QNicIndex qnic_index,
QNodeAddr addr )

◆ getBellPairsRange()

PartnerAddrQubitMapRange quisp::modules::BellPairStore::getBellPairsRange ( QNIC_type qnic_type,
QNicIndex qnic_index,
QNodeAddr partner_addr )

◆ insertEntangledQubit()

void quisp::modules::BellPairStore::insertEntangledQubit ( QNodeAddr partner_addr,
qrsa::IQubitRecord * qubit )

◆ toString()

std::string quisp::modules::BellPairStore::toString ( ) const

Member Data Documentation

◆ _resources

std::map<ResourceKey, PartnerAddrQubitMap> quisp::modules::BellPairStore::_resources
protected

◆ logger

Logger::ILogger* quisp::modules::BellPairStore::logger

The documentation for this class was generated from the following files: