GCC Code Coverage Report


Directory: ./
File: src/StreambufLayer.h
Date: 2024-11-05 15:23:15
Exec Total Coverage
Lines: 1 1 100.0%
Branches: 0 0 -%

Line Branch Exec Source
1 /*****************************************************************************
2 *
3 * Copyright (C) 2015-2016 Richard Hacker (lerichi at gmx dot net)
4 *
5 * This file is part of the PdCom library.
6 *
7 * The PdCom library is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU Lesser General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or (at your
10 * option) any later version.
11 *
12 * The PdCom library is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
15 * License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public License
18 * along with the PdCom library. If not, see <http://www.gnu.org/licenses/>.
19 *
20 *****************************************************************************/
21
22 #ifndef PDCOM_SBLAYER_H
23 #define PDCOM_SBLAYER_H
24
25 #include "IOLayer.h"
26
27 #include <streambuf>
28
29 namespace PdCom { namespace impl {
30 67 class StreambufLayer : public IOLayer, public std::streambuf
31 {
32 public:
33 StreambufLayer(IOLayer *parent);
34
35 private:
36 // Reimplemented methods from streambuf
37 int overflow(int c) override;
38 std::streamsize xsputn(const char *s, std::streamsize n) override;
39 int sync() override;
40 };
41 }} // namespace PdCom::impl
42
43 #endif // PDCOM_SBLAYER_H
44