ifm3d
log_writer_composite.h
1
// -*- c++ -*-
2
/*
3
* Copyright 2023-present ifm electronic, gmbh
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef IFM3D_COMMON_LOGGING_LOG_WRITER_COMPOSITE_H
8
#define IFM3D_COMMON_LOGGING_LOG_WRITER_COMPOSITE_H
9
10
#include <ifm3d/common/logging/log_writer.h>
11
#include <memory>
12
#include <utility>
13
#include <vector>
14
15
namespace
ifm3d
16
{
17
class
LogWriterComposite
:
public
LogWriter
18
{
19
public
:
20
LogWriterComposite
(std::vector<std::shared_ptr<LogWriter>> writers)
21
: _writers(std::move(writers))
22
{}
23
24
void
25
Write(
const
LogEntry
& entry)
override
26
{
27
for
(
const
auto
& it : this->_writers)
28
{
29
it->Write(entry);
30
}
31
}
32
33
protected
:
34
std::vector<std::shared_ptr<LogWriter>> _writers;
35
};
36
}
37
#endif // IFM3D_COMMON_LOGGING_LOG_WRITER_COMPOSITE_H
ifm3d::LogWriterComposite
Definition:
log_writer_composite.h:17
ifm3d::LogWriter
Definition:
log_writer.h:14
ifm3d::LogEntry
Definition:
log_entry.h:19
ifm3d
common
logging
log_writer_composite.h
Generated by
1.8.17