diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2019-08-21 15:57:20 +0200 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2019-08-21 15:57:20 +0200 |
commit | cf14e10797501d9dde4c276c5cf897e729aa4416 (patch) | |
tree | 6b1459485f8ef3518fc14c35319d44b55bd75769 /lib/edioutput/Config.h | |
parent | 1ce18aa61b14ae5201d70cdf07be62183e18de67 (diff) | |
download | dabmux-cf14e10797501d9dde4c276c5cf897e729aa4416.tar.gz dabmux-cf14e10797501d9dde4c276c5cf897e729aa4416.tar.bz2 dabmux-cf14e10797501d9dde4c276c5cf897e729aa4416.zip |
Rename Config.h to EDIConfig.h
Diffstat (limited to 'lib/edioutput/Config.h')
-rw-r--r-- | lib/edioutput/Config.h | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/lib/edioutput/Config.h b/lib/edioutput/Config.h deleted file mode 100644 index ca76322..0000000 --- a/lib/edioutput/Config.h +++ /dev/null @@ -1,84 +0,0 @@ -/* - Copyright (C) 2019 - Matthias P. Braendli, matthias.braendli@mpb.li - - http://www.opendigitalradio.org - - EDI output, - UDP and TCP transports and their configuration - - */ -/* - This file is part of the ODR-mmbTools. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as - published by the Free Software Foundation, either version 3 of the - License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -#include "config.h" -#include <vector> -#include <string> -#include <memory> -#include <cstdint> - -namespace edi { - -/** Configuration for EDI output */ - -struct destination_t { - virtual ~destination_t() {}; -}; - -// Can represent both unicast and multicast destinations -struct udp_destination_t : public destination_t { - std::string dest_addr; - std::string source_addr; - unsigned int source_port = 0; - unsigned int ttl = 10; -}; - -// TCP server that can accept multiple connections -struct tcp_server_t : public destination_t { - unsigned int listen_port = 0; - size_t max_frames_queued = 1024; -}; - -// TCP client that connects to one endpoint -struct tcp_client_t : public destination_t { - std::string dest_addr; - unsigned int dest_port = 0; - size_t max_frames_queued = 1024; -}; - -struct configuration_t { - unsigned chunk_len = 207; // RSk, data length of each chunk - unsigned fec = 0; // number of fragments that can be recovered - bool dump = false; // dump a file with the EDI packets - bool verbose = false; - bool enable_pft = false; // Enable protection and fragmentation - unsigned int tagpacket_alignment = 0; - std::vector<std::shared_ptr<destination_t> > destinations; - unsigned int dest_port = 0; // common destination port, because it's encoded in the transport layer - unsigned int latency_frames = 0; // if nonzero, enable interleaver with a latency of latency_frames * 24ms - - bool enabled() const { return destinations.size() > 0; } - bool interleaver_enabled() const { return latency_frames > 0; } - - void print() const; -}; - -} - - |