From ddc0a92d7e234536f74241aba9bc8fb389533a0a Mon Sep 17 00:00:00 2001 From: dw6 <dw6@wiback.org> Date: Tue, 27 Nov 2007 10:40:46 +0000 Subject: [PATCH] integrated sub-parser for variants --- Packets/MPEGDVBBundle/GREPacket.hh | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Packets/MPEGDVBBundle/GREPacket.hh b/Packets/MPEGDVBBundle/GREPacket.hh index f5617e337..0c63d878f 100644 --- a/Packets/MPEGDVBBundle/GREPacket.hh +++ b/Packets/MPEGDVBBundle/GREPacket.hh @@ -41,6 +41,13 @@ namespace senf { \see GREPacketType */ + struct GREChecksumParser : public PacketParserBase { +# include SENF_PARSER() + SENF_PARSER_PRIVATE_FIELD ( checksum1_, Parse_UInt16 ); + SENF_PARSER_PRIVATE_FIELD ( reserved1_, Parse_UInt16 ); + SENF_PARSER_FINALIZE(GREChecksumParser); + }; + struct Parse_GREPacket : public PacketParserBase { # include SENF_PARSER() @@ -50,10 +57,8 @@ namespace senf { SENF_PARSER_BITFIELD_RO ( version_number, 3, unsigned ); // TODO: Always Zero !! SENF_PARSER_FIELD ( protocol_type, Parse_UInt16 ); SENF_PARSER_PRIVATE_VARIANT ( checksum_, checksum_present, - (VoidPacketParser) (Parse_UInt16) ); - SENF_PARSER_PRIVATE_VARIANT ( reserved1_, checksum_present, - (VoidPacketParser) (Parse_UInt16) ); - + (VoidPacketParser) (GREChecksumParser) ); + SENF_PARSER_FINALIZE( Parse_GREPacket ); private: -- GitLab