TSDuck v3.38-3738
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts::SDT::ServiceEntry Class Reference

Description of a service. More...

#include <tsSDT.h>

Inheritance diagram for ts::SDT::ServiceEntry:
Collaboration diagram for ts::SDT::ServiceEntry:

Public Member Functions

 ServiceEntry (const AbstractTable *table)
 Constructor.
 
bool locateServiceDescriptor (DuckContext &duck, ServiceDescriptor &desc) const
 Locate and deserialize the first DVB service_descriptor inside the entry.
 
UString providerName (DuckContext &duck) const
 Get the provider name.
 
UString serviceName (DuckContext &duck) const
 Get the service name.
 
uint8_t serviceType (DuckContext &duck) const
 Get the service type.
 
void setName (DuckContext &duck, const UString &name, uint8_t service_type=1)
 Set the service name.
 
void setProvider (DuckContext &duck, const UString &provider, uint8_t service_type=1)
 Set the provider name.
 
void setType (uint8_t service_type)
 Set the service type.
 
void updateService (DuckContext &duck, Service &service) const
 Collect all informations about the service.
 

Public Attributes

bool CA_controlled = false
 Controlled by a CA_system.
 
DescriptorList descs
 List of descriptors for this entry, publicly accessible.
 
bool EITpf_present = false
 There are EIT present/following on current TS.
 
bool EITs_present = false
 There are EIT schedule on current TS.
 
size_t order_hint
 Preferred insertion index when serializing the table or NPOS if unspecified.
 
uint8_t running_status = 0
 Running status code.
 

Detailed Description

Description of a service.

Note: by inheriting from EntryWithDescriptors, there is a public field "DescriptorList descs".

Constructor & Destructor Documentation

◆ ServiceEntry()

ts::SDT::ServiceEntry::ServiceEntry ( const AbstractTable table)

Constructor.

Parameters
[in]tableParent SDT.

Member Function Documentation

◆ serviceType()

uint8_t ts::SDT::ServiceEntry::serviceType ( DuckContext duck) const

Get the service type.

Parameters
[in,out]duckTSDuck execution context.
Returns
The service type, as found from the first DVB "service descriptor", if there is one in the list. Return zero if there is no service descriptor.

◆ serviceName()

UString ts::SDT::ServiceEntry::serviceName ( DuckContext duck) const

Get the service name.

Parameters
[in,out]duckTSDuck execution context.
Returns
The service name, as found from the first DVB "service descriptor", if there is one in the list.

◆ providerName()

UString ts::SDT::ServiceEntry::providerName ( DuckContext duck) const

Get the provider name.

Parameters
[in,out]duckTSDuck execution context.
Returns
The provider name, as found from the first DVB "service descriptor", if there is one in the list.

◆ setName()

void ts::SDT::ServiceEntry::setName ( DuckContext duck,
const UString name,
uint8_t  service_type = 1 
)
inline

Set the service name.

Modify the first service_descriptor, if there is one, with the new service name. If there is no service_descriptor, a new one is added with the specified service type.

Parameters
[in,out]duckTSDuck execution context.
[in]nameNew service name.
[in]service_typeIf there is no service_descriptor, a new one is added with the specified service type. The default service_type is 1, ie. "digital television service". Ignored if a service_descriptor already exists.

◆ setProvider()

void ts::SDT::ServiceEntry::setProvider ( DuckContext duck,
const UString provider,
uint8_t  service_type = 1 
)
inline

Set the provider name.

Modify the first service_descriptor, if there is one, with the new provider name. If there is no service_descriptor, a new one is added with the specified service type.

Parameters
[in,out]duckTSDuck execution context.
[in]providerNew provider name.
[in]service_typeIf there is no service_descriptor, a new one is added with the specified service type. The default service_type is 1, ie. "digital television service". Ignored if a service_descriptor already exists.

◆ setType()

void ts::SDT::ServiceEntry::setType ( uint8_t  service_type)

Set the service type.

Modify the first service_descriptor, if there is one, with the new service type. If there is no service_descriptor, a new one is added with empty provider and service names.

Parameters
[in]service_typeNew service type.

◆ locateServiceDescriptor()

bool ts::SDT::ServiceEntry::locateServiceDescriptor ( DuckContext duck,
ServiceDescriptor desc 
) const

Locate and deserialize the first DVB service_descriptor inside the entry.

Parameters
[in,out]duckTSDuck execution context.
[out]descReturned content of the service descriptor.
Returns
True if found and valid, false otherwise.

◆ updateService()

void ts::SDT::ServiceEntry::updateService ( DuckContext duck,
Service service 
) const

Collect all informations about the service.

Parameters
[in,out]duckTSDuck execution context.
[in,out]serviceA service description to update.

Member Data Documentation

◆ order_hint

size_t ts::AbstractTable::EntryBase::order_hint
inherited

Preferred insertion index when serializing the table or NPOS if unspecified.

This is an informational hint which can be used or ignored.


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