X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FMPEGDVBBundle%2FTransportPacket.cc;h=15fef02273a1297628c2cab9b3193ecb5af070cf;hb=a1fdb7bb122f0b05be809a922d4b7ef5e125fa67;hp=bd416fdcbb35579afe07bfcbed270af16cb7aecc;hpb=e61f824b022bb50e9e04598db860a67b644b6818;p=senf.git diff --git a/Packets/MPEGDVBBundle/TransportPacket.cc b/Packets/MPEGDVBBundle/TransportPacket.cc index bd416fd..15fef02 100644 --- a/Packets/MPEGDVBBundle/TransportPacket.cc +++ b/Packets/MPEGDVBBundle/TransportPacket.cc @@ -1,9 +1,9 @@ -// $Id:DatagramSection.cc 327 2007-07-20 10:03:44Z tho $ +// $Id$ // // Copyright (C) 2007 -// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) -// Kompetenzzentrum fuer Satelitenkommunikation (SatCom) -// Stefan Bund +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY +// Thorsten Horstmann // // 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 @@ -20,19 +20,44 @@ // Free Software Foundation, Inc., // 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -// Definition of non-inline non-template functions +/** \file + \brief TransportPacket non-inline non-template implementation */ #include "TransportPacket.hh" //#include "TransportPacket.ih" // Custom includes #include +#include #define prefix_ ///////////////////////////////cc.p//////////////////////////////////////// +prefix_ void senf::TransportPacketParser::init_fields() + const +{ + sync_byte() = TransportPacketType::SYNC_BYTE; + transport_error_indicator() = 0; + transport_scrmbl_ctrl() = 0; + adaptation_field_ctrl() = 0x1u; +} + +prefix_ senf::UInt8Parser senf::TransportPacketParser::pointer_field() + const +{ + return pointer_field_().get<1>(); +} + +prefix_ void senf::TransportPacketParser::setPUSI(bool pusi) + const +{ + if (pusi) pointer_field_().init<1>(); + else pointer_field_().init<0>(); +} + prefix_ void senf::TransportPacketType::dump(packet p, std::ostream & os) { + boost::io::ios_all_saver ias(os); os << "TransportPacket:\n" << std::hex << " syncByte: 0x" << unsigned(p->sync_byte()) << "\n" @@ -45,8 +70,8 @@ prefix_ void senf::TransportPacketType::dump(packet p, std::ostream & os) << " transport_scrambling_control: 0x" << unsigned(p->transport_scrmbl_ctrl()) << "\n" << " adaptation_field_control: 0x" << unsigned(p->adaptation_field_ctrl()) << "\n" << " continuity_counter: 0x" << unsigned(p->continuity_counter()) << "\n"; -// if (p->pusi()) -// os << " payload_pointer: 0x" << unsigned(p->payload_pointer()) << "\n"; + if (p->pusi()) + os << " pointer_field: 0x" << unsigned(p->pointer_field()) << "\n"; } ///////////////////////////////cc.e////////////////////////////////////////