TSDuck v3.40-4033
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts::PSIRepository::RegisterTable Class Reference

A class to register fully implemented tables. More...

#include <tsPSIRepository.h>

Public Member Functions

 RegisterTable (const std::vector< TID > &tids, Standards standards, DisplaySectionFunction display=nullptr, LogSectionFunction log=nullptr, std::initializer_list< PID > pids={}, CASID min_cas=CASID_NULL, CASID max_cas=CASID_NULL)
 Register a known table with display functions but no full C++ class.
 
 RegisterTable (TableFactory factory, std::type_index index, const std::vector< TID > &tids, Standards standards, const UString &xml_name, DisplaySectionFunction display=nullptr, LogSectionFunction log=nullptr, std::initializer_list< PID > pids={}, CASID min_cas=CASID_NULL, CASID max_cas=CASID_NULL)
 Register a fully implemented table.
 

Detailed Description

A class to register fully implemented tables.

The registration is performed using constructors. Thus, it is possible to perform a registration in the declaration of a static object.

Constructor & Destructor Documentation

◆ RegisterTable() [1/2]

ts::PSIRepository::RegisterTable::RegisterTable ( TableFactory  factory,
std::type_index  index,
const std::vector< TID > &  tids,
Standards  standards,
const UString xml_name,
DisplaySectionFunction  display = nullptr,
LogSectionFunction  log = nullptr,
std::initializer_list< PID pids = {},
CASID  min_cas = CASID_NULL,
CASID  max_cas = CASID_NULL 
)

Register a fully implemented table.

Parameters
[in]factoryFunction which creates a table object of this type.
[in]indexType index of the table object class.
[in]tidsList of table ids for this type. Usually there is only one (notable exception: EIT, SDT, NIT).
[in]standardsList of standards which define this table.
[in]xml_nameXML node name for this table type.
[in]displayDisplay function for the corresponding sections. Can be null.
[in]logLog function for the corresponding sections. Can be null.
[in]pidsList of PID's which are defined by the standards for this table.
[in]min_casFirst CA_system_id if the display function applies to one CAS only.
[in]max_casLast CA_system_id if the display function applies to one CAS only. Same as minCAS when set as CASID_NULL.
See also
TS_REGISTER_TABLE

◆ RegisterTable() [2/2]

ts::PSIRepository::RegisterTable::RegisterTable ( const std::vector< TID > &  tids,
Standards  standards,
DisplaySectionFunction  display = nullptr,
LogSectionFunction  log = nullptr,
std::initializer_list< PID pids = {},
CASID  min_cas = CASID_NULL,
CASID  max_cas = CASID_NULL 
)

Register a known table with display functions but no full C++ class.

Parameters
[in]tidsList of table ids for this type. Usually there is only one (notable exception: EIT, SDT, NIT).
[in]standardsList of standards which define this table.
[in]displayDisplay function for the corresponding sections. Can be null.
[in]logLog function for the corresponding sections. Can be null.
[in]pidsList of PID's which are defined by the standards for this table.
[in]min_casFirst CA_system_id if the display function applies to one CAS only.
[in]max_casLast CA_system_id if the display function applies to one CAS only. Same as minCAS when set as CASID_NULL.
See also
TS_REGISTER_SECTION

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