TSDuck v3.43-4509
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches

DVB-NIP analyzer. More...

#include <tsNIPAnalyzer.h>

Inheritance diagram for ts::NIPAnalyzer:
Collaboration diagram for ts::NIPAnalyzer:

Public Member Functions

 NIPAnalyzer (DuckContext &duck)
 Constructor.
 
void addSession (const FluteSessionId &session)
 Add a FLUTE session in the DVB-NIP analyzer.
 
template<class Rep , class Period >
void feedPacket (const cn::duration< Rep, Period > &timestamp, const IPPacket &pkt)
 The following method feeds the analyzer with an IP packet.
 
template<class Rep , class Period >
void feedPacket (const cn::duration< Rep, Period > &timestamp, const IPSocketAddress &source, const IPSocketAddress &destination, const uint8_t *udp, size_t udp_size)
 The following method feeds the analyzer with a UDP packet.
 
void printSummary (std::ostream &out=std::cout)
 Print a summary of the DVB-NIP session.
 
bool reset (const NIPAnalyzerArgs &args)
 Reset the analysis.
 

Detailed Description

DVB-NIP analyzer.

Constructor & Destructor Documentation

◆ NIPAnalyzer()

ts::NIPAnalyzer::NIPAnalyzer ( DuckContext duck)

Constructor.

Parameters
[in,out]duckTSDuck execution context. A reference is kept in this object.

Member Function Documentation

◆ reset()

bool ts::NIPAnalyzer::reset ( const NIPAnalyzerArgs args)

Reset the analysis.

Parameters
[in]argsAnalysis arguments.
Returns
True on success, false on error.

◆ feedPacket() [1/2]

template<class Rep , class Period >
void ts::NIPAnalyzer::feedPacket ( const cn::duration< Rep, Period > &  timestamp,
const IPPacket pkt 
)

The following method feeds the analyzer with an IP packet.

The packet is ignored if this is not a UDP packet.

Parameters
[in]timestampPacket time stamp value. This value should be taken from a monotonic clock.
[in]pktAn IP packet.

◆ feedPacket() [2/2]

template<class Rep , class Period >
void ts::NIPAnalyzer::feedPacket ( const cn::duration< Rep, Period > &  timestamp,
const IPSocketAddress source,
const IPSocketAddress destination,
const uint8_t *  udp,
size_t  udp_size 
)

The following method feeds the analyzer with a UDP packet.

Parameters
[in]timestampPacket time stamp value. This value should be taken from a monotonic clock.
[in]sourceSource socket address.
[in]destinationDestination socket address.
[in]udpAddress of UDP payload.
[in]udp_sizeSize in bytes of UDP payload.

◆ addSession()

void ts::NIPAnalyzer::addSession ( const FluteSessionId session)

Add a FLUTE session in the DVB-NIP analyzer.

There is normally no reason to call this from the application. The analyzer always starts with the DVB-NIP Announcement Channel on reset(). Then, all declared sessions in the DVB-NIP tables are automatically added.

Parameters
[in]sessionThe session id to add.

◆ printSummary()

void ts::NIPAnalyzer::printSummary ( std::ostream &  out = std::cout)

Print a summary of the DVB-NIP session.

Print nothing of option summary was not specified.

Parameters
[in,out]outWhere to print the summary if no output file was specified in NIPAnalyzerArgs. Ignored when an output file was specified.

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