GCC Code Coverage Report


Directory: ./
File: pdcom5/src/IOLayer.cpp
Date: 2023-11-12 04:06:57
Exec Total Coverage
Lines: 19 21 90.5%
Branches: 1 2 50.0%

Line Branch Exec Source
1 /*****************************************************************************
2 *
3 * Copyright (C) 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 #include "IOLayer.h"
23
24 using namespace PdCom::impl;
25
26 ///////////////////////////////////////////////////////////////////////////
27 ///////////////////////////////////////////////////////////////////////////
28 280 IOLayer::IOLayer(IOLayer *parent)
29 {
30 280 m_parent = parent;
31
32 280 rxbytes = 0;
33 280 txbytes = 0;
34 280 }
35
36 ///////////////////////////////////////////////////////////////////////////
37 278 IOLayer::~IOLayer()
38 278 {}
39
40 ///////////////////////////////////////////////////////////////////////////
41 874 int IOLayer::read(char *buf, int n)
42 {
43 874 int count = m_parent->read(buf, n);
44
45
1/2
✓ Branch 0 taken 874 times.
✗ Branch 1 not taken.
874 if (count > 0)
46 874 rxbytes += count;
47
48 874 return count;
49 }
50
51 ///////////////////////////////////////////////////////////////////////////
52 13943 void IOLayer::write(const char *buf, size_t n)
53 {
54 13943 m_parent->write(buf, n);
55
56 13943 txbytes += n;
57 13943 }
58
59 ///////////////////////////////////////////////////////////////////////////
60 460 void IOLayer::flush()
61 {
62 460 m_parent->flush();
63 460 }
64
65 ///////////////////////////////////////////////////////////////////////////
66 void IOLayer::insert(IOLayer *io)
67 {
68 m_parent = io;
69 }
70