GCC Code Coverage Report


Directory: ./
File: channeloutput/DDP.h
Date: 2026-10-29 08:11:58
Exec Total Coverage
Lines: 1 1 100.0%
Functions: 1 1 100.0%
Branches: 0 0 -%

Line Branch Exec Source
1 #pragma once
2 /*
3 * This file is part of the Falcon Player (FPP) and is Copyright (C)
4 * 2013-2022 by the Falcon Player Developers.
5 *
6 * The Falcon Player (FPP) is free software, and is covered under
7 * multiple Open Source licenses. Please see the included 'LICENSES'
8 * file for descriptions of what files are covered by each license.
9 *
10 * This source file is covered under the GPL v2 as described in the
11 * included LICENSE.GPL file.
12 */
13
14 #include "UDPOutput.h"
15 #include "fpp-json-fwd.h"
16 #include <list>
17
18 #define DDP_PORT 4048
19
20 #define DDP_PUSH_FLAG 0x01
21 #define DDP_TIMECODE_FLAG 0x10
22
23 class DDPOutputData : public UDPOutputData {
24 public:
25 explicit DDPOutputData(const Json::Value& config);
26 virtual ~DDPOutputData();
27
28 1392 virtual bool IsPingable() override { return true; }
29 virtual void PrepareData(unsigned char* channelData, UDPOutputMessages& msgs) override;
30 virtual void DumpConfig() override;
31
32 virtual const std::string& GetOutputTypeString() const override;
33 virtual void FrameSent() override;
34
35 char sequenceNumber;
36 // what sequenceNumber becomes once the prepared frame is sent (FrameSent())
37 char pendingSequenceNumber = 1;
38 bool sequencePending = false;
39
40 sockaddr_in ddpAddress;
41 int pktCount;
42
43 struct iovec* ddpIovecs = nullptr;
44 unsigned char** ddpBuffers = nullptr;
45 };
46