galaxy 1.0.0
Real-Time C++23 Game Programming Framework. Built on data-driven design principles and agile software engineering.
Loading...
Searching...
No Matches
Sink.hpp
Go to the documentation of this file.
1
7
8#ifndef GALAXY_LOGGING_SINK_HPP_
9#define GALAXY_LOGGING_SINK_HPP_
10
12
13namespace galaxy
14{
15 namespace logging
16 {
22 class Sink
23 {
24 public:
28 virtual ~Sink();
29
35 virtual void sink_message(const LogMessage& message) = 0;
36
37 protected:
41 Sink() = default;
42
46 Sink(const Sink&) = default;
47
51 Sink(Sink&&) = default;
52
56 [[maybe_unused]]
57 Sink& operator=(const Sink&) = default;
58
62 [[maybe_unused]]
63 Sink& operator=(Sink&&) = default;
64 };
65 } // namespace logging
66} // namespace galaxy
67
68#endif
A source for log messages to be recorded to.
Definition Sink.hpp:23
Sink & operator=(const Sink &)=default
Copy assignment operator.
virtual void sink_message(const LogMessage &message)=0
Sink the message.
virtual ~Sink()
Virtual destructor.
Definition Sink.cpp:14
Sink()=default
Constructor.
Sink(const Sink &)=default
Copy constructor.
Sink & operator=(Sink &&)=default
Move assignment operator.
Sink(Sink &&)=default
Move constructor.
Timer.hpp galaxy.
Definition Async.hpp:17
Parts of a log message to be passed to sinks.