17 #ifndef HH_SENF_Packets_MPEGDVBBundle_TransportPacket_ 18 #define HH_SENF_Packets_MPEGDVBBundle_TransportPacket_ 1 37 # include SENF_PARSER() 116 using mixin::nextPacketRange;
118 using mixin::initSize;
121 static void dump(packet p, std::ostream & os);
122 static const byte SYNC_BYTE = 0x47;
senf::detail::packet::byte byte
#define SENF_PARSER_BITFIELD(name, bits, type)
Define bit-field.
senf::Parse_Variant_Direct< pusi_t,?,(VoidPacketParser)(UInt8Parser) >::parser pointer_field_() const
senf::UIntFieldParser<?,?+2 > transport_scrmbl_ctrl() const
Mixin to provide standard implementations for nextPacketRange and nextPacketType. ...
Parse 8bit unsigned byte aligned integer.
PacketTypeMixin< TransportPacketType > mixin
TransportPacketParser parser
typedef to the parser of Transport packet
senf::UIntFieldParser<?,?+13 > pid() const
void setPUSI(bool pusi) const
#define SENF_PARSER_FIELD(name, type)
Define normal parser field.
#define SENF_PARSER_PRIVATE_VARIANT(name, chooser, types)
Define private VariantParser field.
senf::FlagParser<?> transport_error_indicator() const
#define SENF_PARSER_FINALIZE(name)
Generate parser control members.
ConcretePacket< TransportPacketType > TransportPacket
Transport packet typedef.
senf::FlagParser<?>::value_type pusi() const
void dump(std::ostream &os, DirectoryNode &dir=root())
Protocol specific packet handle.
UInt8Parser pointer_field() const
void defaultInit() const
Default implementation.
Helper base-class implementing the PacketType interface.
senf::FlagParser<?> transport_priority() const
UInt8Parser sync_byte() const
#define SENF_PARSER_BITFIELD_RO(name, bits, type)
Define bit-field (read-only)
#define SENF_PARSER_INIT()
Define parser initialization routine.
senf::UIntFieldParser<?,?+4 > continuity_counter() const
Default parser parsing nothing.
SENF_PACKET_PREVENT_TEMPLATE_INSTANTIATION(RadiotapPacket)
senf::UIntFieldParser<?,?+2 > adaptation_field_ctrl() const
ConcretePacket< TransportPacketType > packet
Transport packet typedef.
Parse a Transport Stream packet.