Parse a DTCP HELLO packet. More...

#include <senf/Packets/MPEGDVBBundle/DTCPPacket.hh>

Inheritance diagram for senf::DTCPHelloPacketParser:

Public Types

enum  Command { JOIN =1, LEAVE =2 }
 
typedef UInt8Parser interval_t
 
typedef UInt16Parser sequenceNumber_t
 
typedef UInt8Parser tunnelProtocol_t
 
typedef UInt8Parser fbipCount_t
 
typedef DTCPIPv4AddressListParser::fbips_t v4fbipList_t
 
typedef DTCPIPv6AddressListParser::fbips_t v6fbipList_t
 
- Public Types inherited from senf::PacketParserBase
typedef detail::packet::iterator data_iterator
 Raw data iterator type. More...
 
typedef detail::packet::size_type size_type
 Unsigned integral type. More...
 
typedef detail::packet::difference_type difference_type
 Signed integral type. More...
 
typedef detail::packet::byte byte
 Unsigned 8bit value, the raw value type. More...
 
typedef PacketData * state_type
 Type of the 'state' parameter. More...
 
typedef PacketParserBase parser_base_type
 Base type of the next parser. More...
 

Public Member Functions

senf::UIntFieldParser<?,?+4 > versionNumber () const
 
senf::UIntFieldParser<?,?+4 > command () const
 
UInt8Parser interval () const
 
UInt16Parser sequenceNumber () const
 
senf::FlagParser<?> receiveCapableFeed () const
 
senf::UIntFieldParser<?,?+4 >::value_type ipVersion () const
 
UInt8Parser tunnelProtocol () const
 
UInt8Parser ::value_type fbipCount () const
 
senf::Parse_Variant_Direct< ipVersion_t,?,(ids(na, has_v4fbipList, init_v4fbipList, key(4, DTCPIPv4AddressListParser)))(ids(na, has_v6fbipList, init_v6fbipList, key(6, DTCPIPv6AddressListParser))) >::parser fbipList_ () const
 
v4fbipList_t v4fbipList ()
 
v6fbipList_t v6fbipList ()
 
- Public Member Functions inherited from senf::PacketParserBase
data_iterator i () const
 Return beginning of data to parse. More...
 
data_iterator i (size_type offset) const
 Return iterator offset bytes from the start. More...
 
state_type state () const
 Return state of this parser. More...
 
PacketData & data () const
 Access the packets raw data container. More...
 
void init () const
 Default implementation. More...
 

Protected Types

typedef UInt8Parser reserved1__t
 

Protected Member Functions

senf::UIntFieldParser<?,?+3 > reserved0_ () const
 
UInt8Parser fbipCount_ () const
 
UInt8Parser reserved1_ () const
 
- Protected Member Functions inherited from senf::PacketParserBase
ParserProtector protect () const
 
 PacketParserBase (data_iterator i, state_type s)
 Standard constructor. More...
 
 PacketParserBase (data_iterator i, state_type s, size_type size)
 Size checking constructor. More...
 
bool check (size_type size) const
 Check size of data container. More...
 
void validate (size_type size) const
 Validate size of data container. More...
 
template<class Parser >
Parser parse (data_iterator i) const
 Create sub-parser. More...
 
template<class Parser , class Arg >
Parser parse (Arg const &arg, data_iterator i) const
 Create sub-parser. More...
 
template<class Parser >
Parser parse (size_type n) const
 Create sub-parser. More...
 
template<class Parser , class Arg >
Parser parse (Arg const &arg, size_type n) const
 Create sub-parser. More...
 
void defaultInit () const
 Default implementation. More...
 
Packet packet () const
 Get packet this parser is parsing from. More...
 
void resize (size_type oldSize, size_type newSize)
 Resize data container. More...
 

Detailed Description

Parse a DTCP HELLO packet.

Parser implementing the DTCP packet according to RFC 3077

See also
DTCPHelloPacketType

Definition at line 70 of file DTCPPacket.hh.

Member Typedef Documentation

◆ fbipCount_t

◆ interval_t

◆ reserved1__t

Definition at line 90 of file DTCPPacket.hh.

◆ sequenceNumber_t

◆ tunnelProtocol_t

◆ v4fbipList_t

◆ v6fbipList_t

Member Enumeration Documentation

◆ Command

Enumerator
JOIN 
LEAVE 

Definition at line 72 of file DTCPPacket.hh.

Member Function Documentation

◆ command()

senf::UIntFieldParser<?,?+ 4 > senf::DTCPHelloPacketParser::command ( ) const

◆ fbipCount()

UInt8Parser ::value_type senf::DTCPHelloPacketParser::fbipCount ( ) const

◆ fbipCount_()

UInt8Parser senf::DTCPHelloPacketParser::fbipCount_ ( ) const
protected

◆ fbipList_()

senf::Parse_Variant_Direct< ipVersion_t,?, ( ids(na, has_v4fbipList, init_v4fbipList, key(4, DTCPIPv4AddressListParser)) ) ( ids(na, has_v6fbipList, init_v6fbipList, key(6, DTCPIPv6AddressListParser)) ) >::parser senf::DTCPHelloPacketParser::fbipList_ ( ) const

◆ interval()

UInt8Parser senf::DTCPHelloPacketParser::interval ( ) const

◆ ipVersion()

senf::UIntFieldParser<?,?+ 4 >::value_type senf::DTCPHelloPacketParser::ipVersion ( ) const

◆ receiveCapableFeed()

senf::FlagParser<?> senf::DTCPHelloPacketParser::receiveCapableFeed ( ) const

◆ reserved0_()

senf::UIntFieldParser<?,?+ 3 > senf::DTCPHelloPacketParser::reserved0_ ( ) const
protected

◆ reserved1_()

UInt8Parser senf::DTCPHelloPacketParser::reserved1_ ( ) const
protected

◆ sequenceNumber()

UInt16Parser senf::DTCPHelloPacketParser::sequenceNumber ( ) const

◆ tunnelProtocol()

UInt8Parser senf::DTCPHelloPacketParser::tunnelProtocol ( ) const

◆ v4fbipList()

v4fbipList_t senf::DTCPHelloPacketParser::v4fbipList ( )
inline

Definition at line 103 of file DTCPPacket.hh.

◆ v6fbipList()

v6fbipList_t senf::DTCPHelloPacketParser::v6fbipList ( )
inline

Definition at line 106 of file DTCPPacket.hh.

◆ versionNumber()

senf::UIntFieldParser<?,?+ 4 > senf::DTCPHelloPacketParser::versionNumber ( ) const

The documentation for this struct was generated from the following file: