QuISP
Loading...
Searching...
No Matches
quisp::modules::runtime_callback::RuntimeCallback Struct Reference

#include <RuntimeCallback.h>

Inheritance diagram for quisp::modules::runtime_callback::RuntimeCallback:
Collaboration diagram for quisp::modules::runtime_callback::RuntimeCallback:

Public Member Functions

 RuntimeCallback (RuleEngine *re)
 
MeasurementOutcome measureQubitRandomly (IQubitRecord *qubit_rec) override
 
MeasurementOutcome measureQubitX (IQubitRecord *qubit_rec) override
 
MeasurementOutcome measureQubitZ (IQubitRecord *qubit_rec) override
 
MeasurementOutcome measureQubitY (IQubitRecord *qubit_rec) override
 
void gateX (IQubitRecord *qubit_rec) override
 
void gateZ (IQubitRecord *qubit_rec) override
 
void gateY (IQubitRecord *qubit_rec) override
 
void gateCNOT (IQubitRecord *control_qubit_rec, IQubitRecord *target_qubit_rec) override
 
int purifyX (IQubitRecord *qubit_rec, IQubitRecord *trash_qubit_rec) override
 
int purifyZ (IQubitRecord *qubit_rec, IQubitRecord *trash_qubit_rec) override
 
int purifyY (IQubitRecord *qubit_rec, IQubitRecord *trash_qubit_rec) override
 
void sendLinkTomographyResult (const unsigned long ruleset_id, const runtime::Rule &rule, const int action_index, const runtime::QNodeAddr partner_addr, int count, MeasurementOutcome outcome, int max_count, SimTime start_time) override
 
void sendPurificationResult (const unsigned long ruleset_id, const QNodeAddr partner_addr, const int shared_rule_tag, const int sequence_number, const int measurement_result, PurType protocol) override
 
void sendSwappingResult (const unsigned long ruleset_id, const QNodeAddr partner_addr, const QNodeAddr new_partner_addr, const int shared_rule_tag, const int sequence_number, const int frame_correction) override
 
void freeAndResetQubit (IQubitRecord *qubit) override
 
bool isQubitLocked (IQubitRecord *const qubit_rec) override
 
void lockQubit (IQubitRecord *const qubit_rec, unsigned long rs_id, int rule_id, int action_index) override
 
int getActionIndex (IQubitRecord *const qubit_rec) override
 
std::string getNodeInfo () override
 
- Public Member Functions inherited from quisp::runtime::Runtime::ICallBack
virtual ~ICallBack ()
 
virtual void sendLinkTomographyResult (const unsigned long ruleset_id, const Rule &rule, const int action_index, const QNodeAddr partner_addr, int count, MeasurementOutcome outcome, int max_count, Time start_time)=0
 

Public Attributes

RuleEnginerule_engine
 
utils::ComponentProviderprovider
 
int right_qubit_index = -1
 
int left_qubit_index = -1
 

Constructor & Destructor Documentation

◆ RuntimeCallback()

quisp::modules::runtime_callback::RuntimeCallback::RuntimeCallback ( RuleEngine * re)
inline

Member Function Documentation

◆ freeAndResetQubit()

void quisp::modules::runtime_callback::RuntimeCallback::freeAndResetQubit ( IQubitRecord * qubit)
inlineoverridevirtual

◆ gateCNOT()

void quisp::modules::runtime_callback::RuntimeCallback::gateCNOT ( IQubitRecord * control_qubit_rec,
IQubitRecord * target_qubit_rec )
inlineoverridevirtual

◆ gateX()

void quisp::modules::runtime_callback::RuntimeCallback::gateX ( IQubitRecord * qubit_rec)
inlineoverridevirtual

◆ gateY()

void quisp::modules::runtime_callback::RuntimeCallback::gateY ( IQubitRecord * qubit_rec)
inlineoverridevirtual

◆ gateZ()

void quisp::modules::runtime_callback::RuntimeCallback::gateZ ( IQubitRecord * qubit_rec)
inlineoverridevirtual

◆ getActionIndex()

int quisp::modules::runtime_callback::RuntimeCallback::getActionIndex ( IQubitRecord *const qubit_rec)
inlineoverridevirtual

◆ getNodeInfo()

std::string quisp::modules::runtime_callback::RuntimeCallback::getNodeInfo ( )
inlineoverridevirtual

◆ isQubitLocked()

bool quisp::modules::runtime_callback::RuntimeCallback::isQubitLocked ( IQubitRecord *const qubit_rec)
inlineoverridevirtual

◆ lockQubit()

void quisp::modules::runtime_callback::RuntimeCallback::lockQubit ( IQubitRecord *const qubit_rec,
unsigned long rs_id,
int rule_id,
int action_index )
inlineoverridevirtual

◆ measureQubitRandomly()

MeasurementOutcome quisp::modules::runtime_callback::RuntimeCallback::measureQubitRandomly ( IQubitRecord * qubit_rec)
inlineoverridevirtual

◆ measureQubitX()

MeasurementOutcome quisp::modules::runtime_callback::RuntimeCallback::measureQubitX ( IQubitRecord * qubit_rec)
inlineoverridevirtual

◆ measureQubitY()

MeasurementOutcome quisp::modules::runtime_callback::RuntimeCallback::measureQubitY ( IQubitRecord * qubit_rec)
inlineoverridevirtual

◆ measureQubitZ()

MeasurementOutcome quisp::modules::runtime_callback::RuntimeCallback::measureQubitZ ( IQubitRecord * qubit_rec)
inlineoverridevirtual

◆ purifyX()

int quisp::modules::runtime_callback::RuntimeCallback::purifyX ( IQubitRecord * qubit_rec,
IQubitRecord * trash_qubit_rec )
inlineoverridevirtual

◆ purifyY()

int quisp::modules::runtime_callback::RuntimeCallback::purifyY ( IQubitRecord * qubit_rec,
IQubitRecord * trash_qubit_rec )
inlineoverridevirtual

◆ purifyZ()

int quisp::modules::runtime_callback::RuntimeCallback::purifyZ ( IQubitRecord * qubit_rec,
IQubitRecord * trash_qubit_rec )
inlineoverridevirtual

◆ sendLinkTomographyResult()

void quisp::modules::runtime_callback::RuntimeCallback::sendLinkTomographyResult ( const unsigned long ruleset_id,
const runtime::Rule & rule,
const int action_index,
const runtime::QNodeAddr partner_addr,
int count,
MeasurementOutcome outcome,
int max_count,
SimTime start_time )
inlineoverride

◆ sendPurificationResult()

void quisp::modules::runtime_callback::RuntimeCallback::sendPurificationResult ( const unsigned long ruleset_id,
const QNodeAddr partner_addr,
const int shared_rule_tag,
const int sequence_number,
const int measurement_result,
PurType protocol )
inlineoverridevirtual

◆ sendSwappingResult()

void quisp::modules::runtime_callback::RuntimeCallback::sendSwappingResult ( const unsigned long ruleset_id,
const QNodeAddr partner_addr,
const QNodeAddr new_partner_addr,
const int shared_rule_tag,
const int sequence_number,
const int frame_correction )
inlineoverridevirtual

Member Data Documentation

◆ left_qubit_index

int quisp::modules::runtime_callback::RuntimeCallback::left_qubit_index = -1

◆ provider

utils::ComponentProvider& quisp::modules::runtime_callback::RuntimeCallback::provider

◆ right_qubit_index

int quisp::modules::runtime_callback::RuntimeCallback::right_qubit_index = -1

◆ rule_engine

RuleEngine* quisp::modules::runtime_callback::RuntimeCallback::rule_engine

The documentation for this struct was generated from the following file: