QuISP
Loading...
Searching...
No Matches
IRealTimeController.h
Go to the documentation of this file.
1#ifndef QUISP_MODULES_IREALTIMECONTROLLER_H_
2#define QUISP_MODULES_IREALTIMECONTROLLER_H_
3
4#include "modules/QNIC.h"
5#include "modules/QRSA/QRSA.h"
7namespace quisp {
8namespace modules {
9
10class IRealTimeController : public cSimpleModule {
11 protected:
12 virtual void initialize() = 0;
13 virtual void handleMessage(cMessage* msg) = 0;
14
15 public:
16 virtual void EmitPhoton(int qnic_index, int qubit_index, QNIC_type qnic_type, int pulse) = 0;
17 virtual void ReInitialize_StationaryQubit(int qnic_index, int qubit_index, QNIC_type qnic_type, bool consumed) = 0;
18 virtual void ReInitialize_StationaryQubit(qrsa::IQubitRecord* const qubit_record, bool consumed) = 0;
19 virtual void applyXGate(qrsa::IQubitRecord* const qubit_record) = 0;
20 virtual void applyZGate(qrsa::IQubitRecord* const qubit_record) = 0;
21 virtual void applyYGate(qrsa::IQubitRecord* const qubit_record) = 0;
22};
23} // namespace modules
24} // namespace quisp
25
26#endif /* QUISP_MODULES_IREALTIMECONTROLLER_H_ */
QNIC.
Definition IRealTimeController.h:10
virtual void handleMessage(cMessage *msg)=0
virtual void ReInitialize_StationaryQubit(qrsa::IQubitRecord *const qubit_record, bool consumed)=0
virtual void EmitPhoton(int qnic_index, int qubit_index, QNIC_type qnic_type, int pulse)=0
virtual void applyZGate(qrsa::IQubitRecord *const qubit_record)=0
virtual void applyYGate(qrsa::IQubitRecord *const qubit_record)=0
virtual void applyXGate(qrsa::IQubitRecord *const qubit_record)=0
virtual void ReInitialize_StationaryQubit(int qnic_index, int qubit_index, QNIC_type qnic_type, bool consumed)=0
The QubitRecord interface.
Definition IQubitRecord.h:17
QNIC_type
Definition QNIC.h:18
Definition Backends.h:10