QuISP
Loading...
Searching...
No Matches
QubitRecord.h
Go to the documentation of this file.
1#pragma once
2
3#include "IQubitRecord.h"
5#include "modules/QNIC.h"
7
9
10class QubitRecord : public IQubitRecord {
11 public:
14 bool isBusy() const override;
15 void setBusy(bool _is_busy) override;
16 bool isAllocated() const override;
17 void setAllocated(bool _is_allocated) override;
18 int getQubitIndex() const override;
19 int getQNicIndex() const override;
20 QNIC_type getQNicType() const override;
21
22 protected:
26 bool is_busy = false;
27 bool is_allocated = false;
29
30 inline void logState();
31};
32
33} // namespace quisp::modules::qubit_record
QNIC.
Interface of Logger class. Logger class that inherits ILogger is responsible for logging simulation r...
Definition ILogger.h:22
The QubitRecord interface.
Definition IQubitRecord.h:17
int qnic_index
Definition QubitRecord.h:24
bool isBusy() const override
Definition QubitRecord.cc:14
void setAllocated(bool _is_allocated) override
Definition QubitRecord.cc:26
bool isAllocated() const override
Definition QubitRecord.cc:24
bool is_busy
Definition QubitRecord.h:26
void setBusy(bool _is_busy) override
Definition QubitRecord.cc:16
int getQNicIndex() const override
Definition QubitRecord.cc:35
QNIC_type getQNicType() const override
Definition QubitRecord.cc:36
bool is_allocated
Definition QubitRecord.h:27
void logState()
Definition QubitRecord.cc:38
QNIC_type qnic_type
Definition QubitRecord.h:23
~QubitRecord()
Definition QubitRecord.cc:12
int qubit_index
Definition QubitRecord.h:25
Logger::ILogger * logger
Definition QubitRecord.h:28
QubitRecord(QNIC_type qnic_type, int qnic_index, int qubit_index, Logger::ILogger *logger=nullptr)
Definition QubitRecord.cc:9
int getQubitIndex() const override
Definition QubitRecord.cc:34
Definition IQubitRecord.h:6
QNIC_type
Definition QNIC.h:18