aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2025-09-10 12:03:24 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2025-09-10 12:03:24 +0200
commit90e9f058450cfb8bc2f06b02c60ba8cb533c2738 (patch)
treec7d74e890c59ee258d018cf78441a896e24ffb1e
parent1b6ce454b7538e5847c30c39c8d4acdbdec810f4 (diff)
downloaddabmux-90e9f058450cfb8bc2f06b02c60ba8cb533c2738.tar.gz
dabmux-90e9f058450cfb8bc2f06b02c60ba8cb533c2738.tar.bz2
dabmux-90e9f058450cfb8bc2f06b02c60ba8cb533c2738.zip
Remove some old _WIN32 ifdefs, restructure includes
-rw-r--r--Makefile.am1
-rw-r--r--src/DabMultiplexer.cpp1
-rw-r--r--src/DabMux.cpp80
-rw-r--r--src/DabMux.h45
-rw-r--r--src/Eti.cpp17
-rw-r--r--src/Eti.h18
-rw-r--r--src/Interleaver.cpp5
-rw-r--r--src/ManagementServer.cpp11
-rw-r--r--src/ManagementServer.h2
-rw-r--r--src/MuxElements.cpp9
-rw-r--r--src/MuxElements.h8
-rw-r--r--src/PcDebug.h62
-rw-r--r--src/fig/FIG0_6.h2
-rw-r--r--src/fig/FIG1.h13
-rw-r--r--src/fig/FIG2.h14
-rw-r--r--src/input/File.cpp18
-rw-r--r--src/mpeg.h15
17 files changed, 54 insertions, 267 deletions
diff --git a/Makefile.am b/Makefile.am
index be2eed3..455a3a0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -60,7 +60,6 @@ odr_dabmux_LDADD =$(ZMQ_LIBS) $(BOOST_LDFLAGS) \
$(PTHREAD_CFLAGS) $(PTHREAD_LIBS) $(BOOST_SYSTEM_LIB)
odr_dabmux_SOURCES =src/DabMux.cpp \
- src/DabMux.h \
src/DabMultiplexer.cpp \
src/DabMultiplexer.h \
src/input/inputs.h \
diff --git a/src/DabMultiplexer.cpp b/src/DabMultiplexer.cpp
index bea82c2..c665f2c 100644
--- a/src/DabMultiplexer.cpp
+++ b/src/DabMultiplexer.cpp
@@ -31,6 +31,7 @@
#include "ManagementServer.h"
#include "crc.h"
#include "utils.h"
+#include "Eti.h"
using namespace std;
diff --git a/src/DabMux.cpp b/src/DabMux.cpp
index 4b9352f..0066629 100644
--- a/src/DabMux.cpp
+++ b/src/DabMux.cpp
@@ -29,83 +29,27 @@
# include "config.h"
#endif
-#include <stdlib.h>
#include <memory>
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/info_parser.hpp>
#include <boost/property_tree/json_parser.hpp>
+#include <ctime>
+#include <cstdlib>
#include <cstdio>
-#include <iostream>
-#include <fstream>
-#include <iomanip>
#include <cstring>
+#include <cmath>
#include <string>
-#include <errno.h>
-#include <sys/types.h>
-#include <sys/stat.h>
#include <fcntl.h>
#include <signal.h>
-// for basename
-#include <libgen.h>
-
-#include <iterator>
#include <vector>
-#include <list>
#include <set>
-#include <map>
-#include <functional>
-#include <algorithm>
-
-#ifdef _WIN32
-# include <time.h>
-# include <process.h>
-# include <io.h>
-# include <conio.h>
-# include <winsock2.h> // For types...
-typedef u_char uint8_t;
-typedef WORD uint16_t;
-typedef DWORD32 uint32_t;
-
-# ifndef __MINGW32__
-# include "xgetopt.h"
-# endif
-# define read _read
-# define snprintf _snprintf
-# define sleep(a) Sleep((a) * 1000)
-#else
-# include <netinet/in.h>
-# include <unistd.h>
-# include <sys/time.h>
-# include <sys/wait.h>
-# include <sys/socket.h>
-# include <sys/ioctl.h>
-# include <sys/times.h>
-# include <sys/resource.h>
-
-#endif
-
-#include <time.h>
-
-#ifdef _WIN32
-# pragma warning ( disable : 4103 )
-# include "Eti.h"
-# pragma warning ( default : 4103 )
-#else
-# include "Eti.h"
-#endif
-#include "input/Prbs.h"
-#include "input/Zmq.h"
+#include "DabMultiplexer.h"
#include "dabOutput/dabOutput.h"
-#include "crc.h"
-#include "Socket.h"
-#include "PcDebug.h"
-#include "DabMux.h"
#include "MuxElements.h"
#include "utils.h"
-#include "ConfigParser.h"
#include "ManagementServer.h"
#include "Log.h"
#include "RemoteControl.h"
@@ -120,14 +64,10 @@ volatile sig_atomic_t running = 1;
*/
void signalHandler(int signum)
{
-#ifdef _WIN32
- fprintf(stderr, "\npid: %i\n", _getpid());
-#else
fprintf(stderr, "\npid: %i, ppid: %i\n", getpid(), getppid());
-#endif
+
#define SIG_MSG "Signal received: "
switch (signum) {
-#ifndef _WIN32
case SIGHUP:
fprintf(stderr, SIG_MSG "SIGHUP\n");
break;
@@ -138,7 +78,6 @@ void signalHandler(int signum)
fprintf(stderr, SIG_MSG "SIGPIPE\n");
return;
break;
-#endif
case SIGINT:
fprintf(stderr, SIG_MSG "SIGINT\n");
break;
@@ -150,9 +89,7 @@ void signalHandler(int signum)
default:
fprintf(stderr, SIG_MSG "number %i\n", signum);
}
-#ifndef _WIN32
killpg(0, SIGPIPE);
-#endif
running = 0;
}
@@ -185,12 +122,6 @@ int main(int argc, char *argv[])
}
}
-#ifdef _WIN32
- if (SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_HIGHEST) == 0) {
- etiLog.log(warn, "Can't increase priority: %s\n",
- strerror(errno));
- }
-#else
// Use the lowest real-time priority for this thread, and switch to real-time scheduling
const int policy = SCHED_RR;
sched_param sp;
@@ -199,7 +130,6 @@ int main(int argc, char *argv[])
if (thread_prio_ret != 0) {
etiLog.level(error) << "Could not set real-time priority for thread:" << thread_prio_ret;
}
-#endif
int returnCode = 0;
ptree pt;
diff --git a/src/DabMux.h b/src/DabMux.h
deleted file mode 100644
index 80b4881..0000000
--- a/src/DabMux.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
- 2011 Her Majesty the Queen in Right of Canada (Communications
- Research Center Canada)
-
- Copyright (C) 2014
- Matthias P. Braendli, matthias.braendli@mpb.li
-
- This file declares several structures used in the multiplexer,
- and defines default values for some parameters.
- */
-/*
- This file is part of ODR-DabMux.
-
- ODR-DabMux 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.
-
- ODR-DabMux 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 ODR-DabMux. If not, see <http://www.gnu.org/licenses/>.
-*/
-#pragma once
-
-#include <stdint.h>
-#include <string>
-#include <vector>
-#include "DabMultiplexer.h"
-#include "RemoteControl.h"
-#include "dabOutput/dabOutput.h"
-#include "input/inputs.h"
-#include "Eti.h"
-#include "MuxElements.h"
-
-#ifdef _WIN32
-# include <time.h>
-#else
-# include <sys/time.h>
-#endif
-
diff --git a/src/Eti.cpp b/src/Eti.cpp
index e1b51fb..2f26f2d 100644
--- a/src/Eti.cpp
+++ b/src/Eti.cpp
@@ -22,19 +22,10 @@
along with ODR-DabMux. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifdef _WIN32
-# pragma warning ( disable : 4103 )
-# include "Eti.h"
-# pragma warning ( default : 4103 )
-#else
-# include "Eti.h"
-# include <time.h>
-#endif
-
+#include "Eti.h"
//definitions des structures des champs du ETI(NI, G703)
-
unsigned short eti_FC::getFrameLength()
{
return (unsigned short)((FL_high << 8) | FL_low);
@@ -80,7 +71,7 @@ void eti_MNSC_TIME_1::setFromTime(struct tm *time_tm)
{
second_unit = time_tm->tm_sec % 10;
second_tens = time_tm->tm_sec / 10;
-
+
minute_unit = time_tm->tm_min % 10;
minute_tens = time_tm->tm_min / 10;
}
@@ -89,7 +80,7 @@ void eti_MNSC_TIME_2::setFromTime(struct tm *time_tm)
{
hour_unit = time_tm->tm_hour % 10;
hour_tens = time_tm->tm_hour / 10;
-
+
day_unit = time_tm->tm_mday % 10;
day_tens = time_tm->tm_mday / 10;
}
@@ -98,7 +89,7 @@ void eti_MNSC_TIME_3::setFromTime(struct tm *time_tm)
{
month_unit = (time_tm->tm_mon + 1) % 10;
month_tens = (time_tm->tm_mon + 1) / 10;
-
+
// They didn't see the y2k bug coming, did they ?
year_unit = (time_tm->tm_year - 100) % 10;
year_tens = (time_tm->tm_year - 100) / 10;
diff --git a/src/Eti.h b/src/Eti.h
index 88055c3..0d7aea5 100644
--- a/src/Eti.h
+++ b/src/Eti.h
@@ -29,24 +29,12 @@
# include <config.h>
#endif
-#ifdef _WIN32
-# include <winsock2.h> // For types...
-typedef WORD uint16_t;
-typedef DWORD32 uint32_t;
-
-# define PACKED
-# pragma pack(push, 1)
-#else
-# include <stdint.h>
-# include <time.h>
-
-# define PACKED __attribute__ ((packed))
-#endif
-
+#include <cstdint>
+#include <ctime>
+#define PACKED __attribute__ ((packed))
//definitions des structures des champs du ETI(NI, G703)
-
struct eti_SYNC {
uint32_t ERR:8;
uint32_t FSYNC:24;
diff --git a/src/Interleaver.cpp b/src/Interleaver.cpp
index cf0d235..1786d08 100644
--- a/src/Interleaver.cpp
+++ b/src/Interleaver.cpp
@@ -23,11 +23,6 @@
#include <string.h>
-#ifdef _WIN32
-# define bzero(a, b) memset((a), 0, (b))
-#endif // _WIN32
-
-
Interleaver::Interleaver(unsigned short I, unsigned short M, bool reverse) :
I(I),
M(M),
diff --git a/src/ManagementServer.cpp b/src/ManagementServer.cpp
index dff093a..2c25a7a 100644
--- a/src/ManagementServer.cpp
+++ b/src/ManagementServer.cpp
@@ -95,11 +95,6 @@ INPUT_COUNTER_RESET_TIME = std::chrono::minutes(30);
static constexpr int
INPUT_UNSTABLE_THRESHOLD = 3;
-/* For how long the input buffers must be empty before we move an input to the
- * NoData state. */
-static constexpr auto
-INPUT_NODATA_TIMEOUT = std::chrono::seconds(30);
-
/* Keep 30s of min/max buffer fill information so that we can catch meaningful
* values even if we have a slow poller */
static constexpr auto
@@ -643,11 +638,7 @@ input_state_t InputStat::determineState()
// STATE CALCULATION
- /* If the buffer has been empty for more than
- * INPUT_NODATA_TIMEOUT, we go to the NoData state.
- *
- * Consider an empty deque to be NoData too.
- */
+ /* Consider an empty deque to be NoData. */
if (std::all_of(
m_buffer_fill_stats.begin(), m_buffer_fill_stats.end(),
[](const fill_stat_t& fs) { return fs.bufsize == 0; }) ) {
diff --git a/src/ManagementServer.h b/src/ManagementServer.h
index c7a4222..d328f88 100644
--- a/src/ManagementServer.h
+++ b/src/ManagementServer.h
@@ -50,7 +50,6 @@
# include "config.h"
#endif
-#include "Socket.h"
#include "zmq.hpp"
#include <string>
#include <map>
@@ -65,7 +64,6 @@
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>
-#include <cmath>
/*** State handing ***/
/* An input can be in one of the following three states:
diff --git a/src/MuxElements.cpp b/src/MuxElements.cpp
index d17b283..1f02a6d 100644
--- a/src/MuxElements.cpp
+++ b/src/MuxElements.cpp
@@ -743,7 +743,14 @@ const json::map_t dabEnsemble::get_all_values() const
return map;
}
-bool dabEnsemble::validate_linkage_sets()
+bool dabEnsemble::validate_linkage_sets() const
+{
+ return validate_linkage_sets(services, linkagesets);
+}
+
+bool dabEnsemble::validate_linkage_sets(
+ const vec_sp_service& services,
+ std::vector<std::shared_ptr<LinkageSet> > linkagesets)
{
for (const auto& ls : linkagesets) {
const std::string keyserviceuid = ls->keyservice;
diff --git a/src/MuxElements.h b/src/MuxElements.h
index d118df9..0266671 100644
--- a/src/MuxElements.h
+++ b/src/MuxElements.h
@@ -33,16 +33,13 @@
#include <memory>
#include <mutex>
#include <string>
-#include <functional>
#include <exception>
-#include <algorithm>
#include <chrono>
#include <optional>
#include <stdint.h>
#include "dabOutput/dabOutput.h"
#include "input/inputs.h"
#include "RemoteControl.h"
-#include "Eti.h"
// Protection levels and bitrates for UEP.
const unsigned char ProtectionLevelTable[64] = {
@@ -315,7 +312,10 @@ class dabEnsemble : public RemoteControllable {
virtual const json::map_t get_all_values() const;
/* Check if the Linkage Sets are valid */
- bool validate_linkage_sets(void);
+ bool validate_linkage_sets() const;
+ static bool validate_linkage_sets(
+ const vec_sp_service& services,
+ std::vector<std::shared_ptr<LinkageSet> > linkagesets);
/* all fields are public, since this was a struct before */
uint16_t id = 0;
diff --git a/src/PcDebug.h b/src/PcDebug.h
index d0b2b2c..68fceb8 100644
--- a/src/PcDebug.h
+++ b/src/PcDebug.h
@@ -19,8 +19,7 @@
along with ODR-DabMux. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef PC_DEBUG_
-#define PC_DEBUG_
+#pragma once
#ifdef HAVE_CONFIG_H
# include "config.h"
@@ -31,49 +30,28 @@
#include <stdio.h>
-#define LOG stderr
+#define LOG stderr
-#if !defined(_WIN32) || defined(__MINGW32__)
-# ifndef PDEBUG
-# ifdef DEBUG
-# define PDEBUG(fmt, args...) fprintf (LOG, fmt , ## args)
-# else
-# define PDEBUG(fmt, args...)
-# endif
-# endif
+#ifndef PDEBUG
# ifdef DEBUG
-# define PDEBUG_VERBOSE(level, verbosity, fmt, args...) if (level <= verbosity) { fprintf(LOG, fmt, ## args); fflush(LOG); }
-# define PDEBUG0_VERBOSE(level, verbosity, txt) if (level <= verbosity) { fprintf(LOG, txt); fflush(LOG); }
-# define PDEBUG1_VERBOSE(level, verbosity, txt, arg0) if (level <= verbosity) { fprintf(LOG, txt, arg0); fflush(LOG); }
-# define PDEBUG2_VERBOSE(level, verbosity, txt, arg0, arg1) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1); fflush(LOG); }
-# define PDEBUG3_VERBOSE(level, verbosity, txt, arg0, arg1, arg2) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1, arg2); fflush(LOG); }
-# define PDEBUG4_VERBOSE(level, verbosity, txt, arg0, arg1, arg2, arg3) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1, arg2, arg3); fflush(LOG); }
-# else
-# define PDEBUG_VERBOSE(level, verbosity, fmt, args...)
-# define PDEBUG0_VERBOSE(level, verbosity, txt)
-# define PDEBUG1_VERBOSE(level, verbosity, txt, arg0)
-# define PDEBUG2_VERBOSE(level, verbosity, txt, arg0, arg1)
-# define PDEBUG3_VERBOSE(level, verbosity, txt, arg0, arg1, arg2)
-# define PDEBUG4_VERBOSE(level, verbosity, txt, arg0, arg1, arg2, arg3)
-# endif // DEBUG
-#else // _WIN32
-# ifdef _DEBUG
-# define PDEBUG
-# define PDEBUG_VERBOSE
-# define PDEBUG0_VERBOSE(level, verbosity, txt) if (level <= verbosity) { fprintf(LOG, txt); fflush(LOG); }
-# define PDEBUG1_VERBOSE(level, verbosity, txt, arg0) if (level <= verbosity) { fprintf(LOG, txt, arg0); fflush(LOG); }
-# define PDEBUG2_VERBOSE(level, verbosity, txt, arg0, arg1) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1); fflush(LOG); }
-# define PDEBUG3_VERBOSE(level, verbosity, txt, arg0, arg1, arg2) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1, arg2); fflush(LOG); }
-# define PDEBUG4_VERBOSE(level, verbosity, txt, arg0, arg1, arg2, arg3) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1, arg2, arg3); fflush(LOG); }
+# define PDEBUG(fmt, args...) fprintf (LOG, fmt , ## args)
# else
-# define PDEBUG
-# define PDEBUG_VERBOSE
-# define PDEBUG0_VERBOSE(level, verbosity, txt)
-# define PDEBUG1_VERBOSE(level, verbosity, txt, arg0)
-# define PDEBUG2_VERBOSE(level, verbosity, txt, arg0, arg1)
-# define PDEBUG3_VERBOSE(level, verbosity, txt, arg0, arg1, arg2)
-# define PDEBUG4_VERBOSE(level, verbosity, txt, arg0, arg1, arg2, arg3)
+# define PDEBUG(fmt, args...)
# endif
#endif
+#ifdef DEBUG
+# define PDEBUG_VERBOSE(level, verbosity, fmt, args...) if (level <= verbosity) { fprintf(LOG, fmt, ## args); fflush(LOG); }
+# define PDEBUG0_VERBOSE(level, verbosity, txt) if (level <= verbosity) { fprintf(LOG, txt); fflush(LOG); }
+# define PDEBUG1_VERBOSE(level, verbosity, txt, arg0) if (level <= verbosity) { fprintf(LOG, txt, arg0); fflush(LOG); }
+# define PDEBUG2_VERBOSE(level, verbosity, txt, arg0, arg1) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1); fflush(LOG); }
+# define PDEBUG3_VERBOSE(level, verbosity, txt, arg0, arg1, arg2) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1, arg2); fflush(LOG); }
+# define PDEBUG4_VERBOSE(level, verbosity, txt, arg0, arg1, arg2, arg3) if (level <= verbosity) { fprintf(LOG, txt, arg0, arg1, arg2, arg3); fflush(LOG); }
+#else
+# define PDEBUG_VERBOSE(level, verbosity, fmt, args...)
+# define PDEBUG0_VERBOSE(level, verbosity, txt)
+# define PDEBUG1_VERBOSE(level, verbosity, txt, arg0)
+# define PDEBUG2_VERBOSE(level, verbosity, txt, arg0, arg1)
+# define PDEBUG3_VERBOSE(level, verbosity, txt, arg0, arg1, arg2)
+# define PDEBUG4_VERBOSE(level, verbosity, txt, arg0, arg1, arg2, arg3)
+#endif // DEBUG
-#endif // PC_DEBUG_
diff --git a/src/fig/FIG0_6.h b/src/fig/FIG0_6.h
index 770c4d5..96464d2 100644
--- a/src/fig/FIG0_6.h
+++ b/src/fig/FIG0_6.h
@@ -26,8 +26,6 @@
#pragma once
#include <cstdint>
-#include <vector>
-#include <memory>
namespace FIC {
diff --git a/src/fig/FIG1.h b/src/fig/FIG1.h
index 0fedffe..fe36717 100644
--- a/src/fig/FIG1.h
+++ b/src/fig/FIG1.h
@@ -23,8 +23,7 @@
along with ODR-DabMux. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __FIG1_H_
-#define __FIG1_H_
+#pragma once
#include <cstdint>
@@ -103,10 +102,6 @@ class FIG1_5 : public IFIG
vec_sp_service::iterator service;
};
-#ifdef _WIN32
-# pragma pack(push)
-#endif
-
struct FIGtype1_0 {
uint8_t Length:5;
uint8_t FIGtypeNumber:3;
@@ -165,11 +160,5 @@ struct FIGtype1_4_data {
} PACKED;
-#ifdef _WIN32
-# pragma pack(pop)
-#endif
-
} // namespace FIC
-#endif // __FIG1_H_
-
diff --git a/src/fig/FIG2.h b/src/fig/FIG2.h
index ee3fed9..e69c5db 100644
--- a/src/fig/FIG2.h
+++ b/src/fig/FIG2.h
@@ -22,9 +22,7 @@
You should have received a copy of the GNU General Public License
along with ODR-DabMux. If not, see <http://www.gnu.org/licenses/>.
*/
-
-#ifndef __FIG2_H_
-#define __FIG2_H_
+#pragma once
#include <cstdint>
#include <map>
@@ -117,10 +115,6 @@ class FIG2_4 : public IFIG
std::map<std::pair<uint32_t, uint8_t>, FIG2_Segments> segment_per_component;
};
-#ifdef _WIN32
-# pragma pack(push)
-#endif
-
struct FIGtype2 {
uint8_t Length:5;
uint8_t FIGtypeNumber:3;
@@ -159,11 +153,5 @@ struct FIG2_Extended_Label_WithTextControl {
uint8_t EncodingFlag:1;
} PACKED;
-#ifdef _WIN32
-# pragma pack(pop)
-#endif
-
} // namespace FIC
-#endif // __FIG2_H_
-
diff --git a/src/input/File.cpp b/src/input/File.cpp
index d9fe02a..c70feee 100644
--- a/src/input/File.cpp
+++ b/src/input/File.cpp
@@ -28,9 +28,6 @@
#include <cstdio>
#include <fcntl.h>
#include <unistd.h>
-#ifndef _WIN32
-# define O_BINARY 0
-#endif
#include "input/File.h"
#include "mpeg.h"
#include "ReedSolomon.h"
@@ -39,9 +36,6 @@ using namespace std;
namespace Inputs {
-#ifdef _WIN32
-# pragma pack(push, 1)
-#endif
struct packetHeader {
unsigned char addressHigh:2;
unsigned char last:1;
@@ -52,11 +46,7 @@ struct packetHeader {
unsigned char dataLength:7;
unsigned char command;
}
-#ifdef _WIN32
-# pragma pack(pop)
-#else
__attribute((packed))
-#endif
;
@@ -68,7 +58,7 @@ void FileBase::open(const std::string& name)
load_entire_file();
}
else {
- int flags = O_RDONLY | O_BINARY;
+ int flags = O_RDONLY;
if (m_nonblock) {
flags |= O_NONBLOCK;
}
@@ -140,13 +130,13 @@ ssize_t FileBase::load_entire_file()
{
// Clear the buffer if the file open fails, this allows user to stop transmission
// of the current data.
- vector<uint8_t> old_file_contents = move(m_file_contents);
+ vector<uint8_t> old_file_contents = std::move(m_file_contents);
m_file_contents.clear();
m_file_contents_offset = 0;
// Read entire file in chunks of 4MiB
constexpr size_t blocksize = 4 * 1024 * 1024;
- constexpr int flags = O_RDONLY | O_BINARY;
+ constexpr int flags = O_RDONLY;
m_fd = ::open(m_filename.c_str(), flags);
if (m_fd == -1) {
if (not m_file_open_alert_shown) {
@@ -225,7 +215,7 @@ ssize_t FileBase::readFromFile(uint8_t *buffer, size_t size)
vector<uint8_t> remaining_buf;
copy(m_nonblock_buffer.begin() + size, m_nonblock_buffer.end(), back_inserter(remaining_buf));
- m_nonblock_buffer = move(remaining_buf);
+ m_nonblock_buffer = std::move(remaining_buf);
return size;
}
diff --git a/src/mpeg.h b/src/mpeg.h
index 15b9b80..29b3655 100644
--- a/src/mpeg.h
+++ b/src/mpeg.h
@@ -18,23 +18,13 @@
You should have received a copy of the GNU General Public License
along with ODR-DabMux. If not, see <http://www.gnu.org/licenses/>.
*/
-
-#ifndef _MPEG
-#define _MPEG
+#pragma once
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
-#ifdef _WIN32
-# include <stddef.h>
-# include <basetsd.h>
-# include <io.h>
-
-# define ssize_t SSIZE_T
-#else
-# include <unistd.h>
-#endif
+#include <unistd.h>
#ifdef __cplusplus
extern "C" {
@@ -86,4 +76,3 @@ int checkDabMpegFrame(void* data);
}
#endif
-#endif // _MPEG