diff options
Diffstat (limited to 'src/dabInputBridgeUdp.cpp')
-rw-r--r-- | src/dabInputBridgeUdp.cpp | 129 |
1 files changed, 0 insertions, 129 deletions
diff --git a/src/dabInputBridgeUdp.cpp b/src/dabInputBridgeUdp.cpp deleted file mode 100644 index fdf3d1f..0000000 --- a/src/dabInputBridgeUdp.cpp +++ /dev/null @@ -1,129 +0,0 @@ -/* - Copyright (C) 2009 Her Majesty the Queen in Right of Canada (Communications - Research Center Canada) - */ -/* - 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/>. - */ - -#include "dabInputBridgeUdp.h" -#include "dabInputUdp.h" -#include "bridge.h" - -#ifdef HAVE_FORMAT_BRIDGE -# ifdef HAVE_INPUT_UDP - -struct dabInputBridgeUdpData { - dabInputUdpData* udpData; - bridgeInfo* info; -}; - - -struct dabInputOperations dabInputBridgeUdpOperations = { - dabInputBridgeUdpInit, - dabInputBridgeUdpOpen, - dabInputSetbuf, - NULL, - NULL, - NULL, - dabInputBridgeUdpRead, - dabInputSetbitrate, - dabInputBridgeUdpClose, - dabInputBridgeUdpClean, - NULL -}; - - -int dabInputBridgeUdpInit(void** args) -{ - dabInputBridgeUdpData* input = new dabInputBridgeUdpData; - dabInputUdpInit((void**)&input->udpData); - input->info = new bridgeInfo; - bridgeInitInfo(input->info); - *args = input; - - return 0; -} - - -int dabInputBridgeUdpOpen(void* args, const char* inputName) -{ - dabInputBridgeUdpData* input = (dabInputBridgeUdpData*)args; - - return dabInputUdpOpen(input->udpData, inputName); -} - - -int dabInputBridgeUdpRead(dabInputOperations* ops, void* args, void* buffer, int size) -{ - int nbBytes = 0; - dabInputBridgeUdpData* input = (dabInputBridgeUdpData*)args; - dabInputFifoStats* stats = (dabInputFifoStats*)&input->udpData->stats; - - stats->frameRecords[stats->frameCount].curSize = 0; - stats->frameRecords[stats->frameCount].maxSize = size; - - if (input->udpData->packet->getSize() == 0) { - input->udpData->socket->receive(*input->udpData->packet); - } - while ((nbBytes = writePacket(input->udpData->packet->getData(), - input->udpData->packet->getSize(), buffer, size, - input->info)) - != 0) { - stats->frameRecords[stats->frameCount].curSize = nbBytes; - input->udpData->socket->receive(*input->udpData->packet); - } - - if (input->udpData->packet->getSize() != 0) { - stats->frameRecords[stats->frameCount].curSize = size; - } - - if (++stats->frameCount == NB_RECORDS) { - etiLog.log(info, "Data subchannel usage: (%i)", - stats->id); - for (int i = 0; i < stats->frameCount; ++i) { - etiLog.log(info, " %i/%i", - stats->frameRecords[i].curSize, - stats->frameRecords[i].maxSize); - } - etiLog.log(info, "\n"); - stats->frameCount = 0; - } - return size; -} - - -int dabInputBridgeUdpClose(void* args) -{ - dabInputBridgeUdpData* input = (dabInputBridgeUdpData*)args; - - return dabInputUdpClose(input->udpData); -} - - -int dabInputBridgeUdpClean(void** args) -{ - dabInputBridgeUdpData* input = (dabInputBridgeUdpData*)(*args); - dabInputUdpClean((void**)&input->udpData); - delete input->info; - delete input; - return 0; -} - - -# endif // HAVE_INPUT_UDP -#endif // HAVE_FORMAT_BRIDGE - |