SOLA
Loading...
Searching...
No Matches
logger_interface.h
1// Copyright The SOLA Contributors
2//
3// Licensed under the MIT License.
4// For details on the licensing terms, see the LICENSE file.
5// SPDX-License-Identifier: MIT
6
7#ifndef SOLA_LOGGER_INTERFACE_H_
8#define SOLA_LOGGER_INTERFACE_H_
9
10#include <memory>
11#include <string>
12
13#include "SOLA/message.h"
14
15namespace sola {
16
17class LoggerInterface;
18
19using LoggerPtr = std::shared_ptr<LoggerInterface>;
20
25public:
26 explicit LoggerInterface(std::string uuid) : uuid_(std::move(uuid)) {}
27 virtual ~LoggerInterface() = default;
28
29 virtual void logSubscribeTopic(const std::string &topic) const = 0;
30 virtual void logUnsubscribeTopic(const std::string &topic) const = 0;
31
32 virtual void logPublishTopicMessage(const sola::TopicMessage &msg) const = 0;
33 virtual void logReceiveTopicMessage(const sola::TopicMessage &msg) const = 0;
34
37 virtual void logMessageIDMapping(const solanet::UUID &sola_msg_uuid,
38 const solanet::UUID &ed_msg_uuid) const = 0;
39
45 virtual void setApplicationUUID(const std::string &app_uuid) = 0;
46
47protected:
48 std::string uuid_;
49};
50} // namespace sola
51
52#endif // SOLA_LOGGER_INTERFACE_H_
Definition logger_interface.h:24
virtual void logMessageIDMapping(const solanet::UUID &sola_msg_uuid, const solanet::UUID &ed_msg_uuid) const =0
virtual void setApplicationUUID(const std::string &app_uuid)=0
Definition message.h:20