QuISP
Loading...
Searching...
No Matches
JsonLogger.h
Go to the documentation of this file.
1#pragma once
3#include <spdlog/fmt/ostr.h>
4#include <spdlog/spdlog.h>
5#include <memory>
6#include "ILogger.h"
7
9
13class JsonLogger : public ILogger {
14 public:
15 JsonLogger(std::shared_ptr<spdlog::logger> logger);
16 virtual ~JsonLogger();
17 void logPacket(const std::string& event_type, omnetpp::cMessage const* const msg) override;
18 void logQubitState(quisp::modules::QNIC_type qnic_type, int qnic_index, int qubit_index, bool is_busy, bool is_allocated) override;
19 void logBellPairInfo(const std::string& event_type, int partner_addr, quisp::modules::QNIC_type qnic_type, int qnic_index, int qubit_index) override;
20 void setModule(omnetpp::cModule const* const mod) override;
21 void setQNodeAddress(int addr) override;
22
23 protected:
24 std::shared_ptr<spdlog::logger> _logger;
25 static std::string format(omnetpp::cMessage const* const msg);
26
27 std::string module_path;
28 int qnode_address = -1;
29 omnetpp::cModule const* module;
30};
31} // namespace quisp::modules::Logger
Interface of Logger class. Logger class that inherits ILogger is responsible for logging simulation r...
Definition ILogger.h:22
JsonLogger class uses spdlog library and yields jsonl format log.
Definition JsonLogger.h:13
virtual ~JsonLogger()
Definition JsonLogger.cc:16
int qnode_address
Definition JsonLogger.h:28
std::string module_path
Definition JsonLogger.h:27
void setModule(omnetpp::cModule const *const mod) override
Definition JsonLogger.cc:18
void logPacket(const std::string &event_type, omnetpp::cMessage const *const msg) override
Definition JsonLogger.cc:25
omnetpp::cModule const * module
Definition JsonLogger.h:29
void logBellPairInfo(const std::string &event_type, int partner_addr, quisp::modules::QNIC_type qnic_type, int qnic_index, int qubit_index) override
Definition JsonLogger.cc:78
void setQNodeAddress(int addr) override
Definition JsonLogger.cc:23
std::shared_ptr< spdlog::logger > _logger
Definition JsonLogger.h:24
void logQubitState(quisp::modules::QNIC_type qnic_type, int qnic_index, int qubit_index, bool is_busy, bool is_allocated) override
Definition JsonLogger.cc:30
static std::string format(omnetpp::cMessage const *const msg)
Definition JsonLogger.cc:37
Definition DisabledLogger.h:4
QNIC_type
Definition QNIC.h:18