X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FMPEGDVBBundle%2FTransportPacket.hh;h=365fee40028df8514254f56f66ff34194ca9e114;hb=f1fc7057fa65a9509651d08c6c134d136fbb0424;hp=86dba04bfcfb458decde7420a7295d99204451a3;hpb=dfdc2f4338b1f366548033dd494db573a1032276;p=senf.git diff --git a/Packets/MPEGDVBBundle/TransportPacket.hh b/Packets/MPEGDVBBundle/TransportPacket.hh index 86dba04..365fee4 100644 --- a/Packets/MPEGDVBBundle/TransportPacket.hh +++ b/Packets/MPEGDVBBundle/TransportPacket.hh @@ -20,6 +20,9 @@ // Free Software Foundation, Inc., // 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +/** \file + \brief TransportPacket public header */ + #ifndef HH_TransportPacket_ #define HH_TransportPacket_ 1 @@ -34,14 +37,15 @@ ///////////////////////////////hh.p//////////////////////////////////////// namespace senf { - - ///\addtogroup protocolbundle_mpegdvb - ///@{ - + + /** \brief Parse a Transport Stream packet + + Parser implementing the header of a MPEG Transport Stream Packet. + + \see TransportPacketType + */ struct Parse_TransportPacket : public PacketParserBase { - SENF_PACKET_PARSER_INIT(Parse_TransportPacket); - typedef Parse_Flag < 0 > Parse_tei; // transport_error_indicator typedef Parse_Flag < 1 > Parse_pusi; // payload_unit_start_indicator typedef Parse_Flag < 2 > Parse_transportPrio; // transport_priority @@ -50,10 +54,12 @@ namespace senf { typedef Parse_UIntField < 2, 4 > Parse_adaptCtrl; // adaptation_field_control typedef Parse_UIntField < 4, 8 > Parse_contCounter; // continuity_counter - /////////////////////////////////////////////////////////////////////////// - +# ifndef DOXYGEN + + SENF_PACKET_PARSER_INIT(Parse_TransportPacket); + SENF_PACKET_PARSER_DEFINE_FIXED_FIELDS( - ((Field ) ( syncByte, Parse_UInt8 )) + ((Field ) ( sync_byte, Parse_UInt8 )) ((OverlayField) ( transport_error_indicator, Parse_tei )) ((OverlayField) ( pusi, Parse_pusi )) ((OverlayField) ( transport_priority, Parse_transportPrio )) @@ -63,8 +69,34 @@ namespace senf { ((Field ) ( continuity_counter, Parse_contCounter )) ); +# else + + Parse_UInt8 sync_byte() const; + Parse_tei transport_error_indicator() const; + Parse_pusi pusi() const; + Parse_transportPrio transport_priority() const; + Parse_pid pid() const; + Parse_tsc transport_scrmbl_ctrl() const; + Parse_adaptCtrl adaptation_field_ctrl() const; + Parse_contCounter continuity_counter() const; + +# endif + +// Parse_UInt8 payload_pointer() const { +// return parse( Parse_TransportPacket::fixed_bytes ); +// } }; + /** \brief Transport Stream packet + + \par Packet type (typedef): + \ref TransportPacket + + \par Fields: + \ref Parse_TransportPacket + + \ingroup protocolbundle_mpegdvb + */ struct TransportPacketType : public PacketTypeBase, public PacketTypeMixin @@ -80,10 +112,9 @@ namespace senf { static void dump(packet p, std::ostream & os); }; - - typedef TransportPacketType::packet TransportPacket; - ///@} + /** \brief Transport packet typedef */ + typedef TransportPacketType::packet TransportPacket; }