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 PacketDatastate_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...
 
PacketDatadata () 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: