TSDuck v3.40-3963
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts::AbstractSignalization Class Referenceabstract

Abstract base class for MPEG PSI/SI tables and descriptors. More...

#include <tsAbstractSignalization.h>

Inheritance diagram for ts::AbstractSignalization:
Collaboration diagram for ts::AbstractSignalization:

Public Member Functions

virtual ~AbstractSignalization () override
 Virtual destructor.
 
virtual void clear ()
 This method clears the content of the table or descriptor.
 
template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
UString dataName (const UChar *section, INT value, NamesFlags flags=NamesFlags::NAME, size_t bits=0, INT alternate=0)
 Get a name from a specified section in the DVB names file for that signalization structure.
 
virtual Standards definingStandards () const override
 Get the list of standards which define this object.
 
virtual void fromXML (DuckContext &duck, const xml::Element *element)
 This method converts an XML structure to a table or descriptor in this object.
 
void invalidate ()
 Invalidate this object.
 
bool isValid () const
 Check if this object is valid.
 
virtual xml::ElementtoXML (DuckContext &duck, xml::Element *parent) const
 This method converts this object to XML.
 
UString xmlName () const
 Get the XMl node name representing this table or descriptor.
 

Static Public Member Functions

template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
static UString DataName (const UChar *xml_name, const UChar *section, INT value, NamesFlags flags=NamesFlags::NAME, size_t bits=0, INT alternate=0)
 Get a name from a specified section in the DVB names file.
 

Static Public Attributes

static const UChar *const XML_GENERIC_DESCRIPTOR
 XML tag name for generic descriptors.
 
static const UChar *const XML_GENERIC_LONG_TABLE
 XML tag name for generic tables with long sections.
 
static const UChar *const XML_GENERIC_SHORT_TABLE
 XML tag name for generic short sections.
 

Protected Member Functions

 AbstractSignalization (AbstractSignalization &&other)=default
 Move constructor.
 
 AbstractSignalization (const AbstractSignalization &other)=default
 Copy constructor.
 
 AbstractSignalization (const UChar *xml_name, Standards standards, const UChar *xml_legacy_name=nullptr)
 Protected constructor for subclasses.
 
virtual bool analyzeXML (DuckContext &duck, const xml::Element *element)=0
 Helper method to convert this object from XML.
 
virtual void buildXML (DuckContext &duck, xml::Element *root) const =0
 Helper method to convert this object to XML.
 
virtual void clearContent ()=0
 Helper method to clear the content of the table or descriptor.
 
AbstractSignalizationoperator= (AbstractSignalization &&other)
 Assignment move operator.
 
AbstractSignalizationoperator= (const AbstractSignalization &other)
 Assignment operator.
 

Detailed Description

Abstract base class for MPEG PSI/SI tables and descriptors.

Some methods are declared as "virtual final". Since these methods are not inherited, this seems useless. This is in fact a compilation check. These methods were formerly designed to be overridden by subclasses but the implementation has changed. They are now defined in this class only and call a new pure virtual method. The "final" attribute is here to detect old subclasses which do not yet use the new scheme.

Constructor & Destructor Documentation

◆ AbstractSignalization() [1/3]

ts::AbstractSignalization::AbstractSignalization ( const UChar xml_name,
Standards  standards,
const UChar xml_legacy_name = nullptr 
)
protected

Protected constructor for subclasses.

Parameters
[in]xml_nameTable or descriptor name, as used in XML structures.
[in]standardsA bit mask of standards which define this structure.
[in]xml_legacy_nameTable or descriptor legacy XML name. Ignored if null pointer.

◆ AbstractSignalization() [2/3]

ts::AbstractSignalization::AbstractSignalization ( const AbstractSignalization other)
protecteddefault

Copy constructor.

Use default implementation, just tell the compiler we understand the consequences of copying a pointer member.

Parameters
[in]otherThe other instance to copy.

◆ AbstractSignalization() [3/3]

ts::AbstractSignalization::AbstractSignalization ( AbstractSignalization &&  other)
protecteddefault

Move constructor.

Use default implementation, just tell the compiler we understand the consequences of copying a pointer member.

Parameters
[in]otherThe other instance to copy.

Member Function Documentation

◆ isValid()

bool ts::AbstractSignalization::isValid ( ) const
inline

Check if this object is valid.

Returns
True if this object is valid.

◆ invalidate()

void ts::AbstractSignalization::invalidate ( )
inline

Invalidate this object.

This object must be rebuilt.

◆ clear()

virtual void ts::AbstractSignalization::clear ( )
virtual

This method clears the content of the table or descriptor.

Upon return, the object is valid and in the same empty state as after a default constructor.

Reimplemented in ts::AbstractTable, and ts::AbstractLongTable.

◆ xmlName()

UString ts::AbstractSignalization::xmlName ( ) const

Get the XMl node name representing this table or descriptor.

Returns
The XML node name.

◆ toXML()

virtual xml::Element * ts::AbstractSignalization::toXML ( DuckContext duck,
xml::Element parent 
) const
virtual

This method converts this object to XML.

When this object is valid, this method creates a root node with the default XML name and then invokes buildXML() in the subclass to populate the XML node.

Important: Implementers of signalization classes shall not override this class. Implement the protected method buildXML() instead.

Parameters
[in,out]duckTSDuck execution context.
[in,out]parentThe parent node for the new XML tree.
Returns
The new XML element.

Reimplemented in ts::AbstractTable.

◆ fromXML()

virtual void ts::AbstractSignalization::fromXML ( DuckContext duck,
const xml::Element element 
)
virtual

This method converts an XML structure to a table or descriptor in this object.

In case of success, this object is replaced with the interpreted content of the XML structure. In case of error, this object is invalidated.

This method checks the name of the XML node and then invokes analyzeXML() in the subclass. Depending on the returned values of analyzeXML(), this object is either validated or invalidated.

Important: Implementers of signalization classes shall not override this class. Implement the protected method analyzeXML() instead.

Parameters
[in,out]duckTSDuck execution context.
[in]elementXML element to convert.

Reimplemented in ts::AbstractTable.

◆ definingStandards()

virtual Standards ts::AbstractSignalization::definingStandards ( ) const
overridevirtual

Get the list of standards which define this object.

Returns
A bit mask of standards.

Implements ts::AbstractDefinedByStandards.

◆ DataName()

template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
static UString ts::AbstractSignalization::DataName ( const UChar xml_name,
const UChar section,
INT  value,
NamesFlags  flags = NamesFlags::NAME,
size_t  bits = 0,
INT  alternate = 0 
)
inlinestatic

Get a name from a specified section in the DVB names file.

Template Parameters
INTAn integer type.
Parameters
[in]xml_nameTable or descriptor name, as used in XML structures.
[in]sectionName of section to search. Not case-sensitive. The actual section in the names file is prefixed by the XML name, followed by a dot.
[in]valueValue to get the name for.
[in]flagsPresentation flags.
[in]bitsNominal size in bits of the data, optional.
[in]alternateDisplay this integer value if flags ALTERNATE is set.
Returns
The corresponding name.

◆ dataName()

template<typename INT , typename std::enable_if< std::is_integral< INT >::value, int >::type = 0>
UString ts::AbstractSignalization::dataName ( const UChar section,
INT  value,
NamesFlags  flags = NamesFlags::NAME,
size_t  bits = 0,
INT  alternate = 0 
)
inline

Get a name from a specified section in the DVB names file for that signalization structure.

Template Parameters
INTAn integer type.
Parameters
[in]sectionName of section to search. Not case-sensitive. The actual section in the names file is prefixed by the XML name of the structure, followed by a dot.
[in]valueValue to get the name for.
[in]flagsPresentation flags.
[in]bitsNominal size in bits of the data, optional.
[in]alternateDisplay this integer value if flags ALTERNATE is set.
Returns
The corresponding name.

◆ operator=() [1/2]

AbstractSignalization & ts::AbstractSignalization::operator= ( const AbstractSignalization other)
protected

Assignment operator.

Parameters
[in]otherThe other instance to copy.
Returns
A reference to this object.

◆ operator=() [2/2]

AbstractSignalization & ts::AbstractSignalization::operator= ( AbstractSignalization &&  other)
protected

Assignment move operator.

Parameters
[in]otherThe other instance to copy.
Returns
A reference to this object.

◆ clearContent()

virtual void ts::AbstractSignalization::clearContent ( )
protectedpure virtual

Helper method to clear the content of the table or descriptor.

It is called by clear(). In clearContent(), the subclass shall simply revert the value of all fields to their original values in the default constructor.

Implemented in ts::AV1VideoDescriptor, ts::ATSCAC3AudioStreamDescriptor, ts::ATSCEAC3AudioDescriptor, ts::ATSCStuffingDescriptor, ts::ATSCTimeShiftedServiceDescriptor, ts::CaptionServiceDescriptor, ts::ComponentNameDescriptor, ts::ContentAdvisoryDescriptor, ts::DCCArrivingRequestDescriptor, ts::DCCDepartingRequestDescriptor, ts::ExtendedChannelNameDescriptor, ts::GenreDescriptor, ts::RedistributionControlDescriptor, ts::ServiceLocationDescriptor, ts::AVS2AudioDescriptor, ts::AVS3AudioDescriptor, ts::AVS3VideoDescriptor, ts::DTGGuidanceDescriptor, ts::DTGServiceAttributeDescriptor, ts::DTGShortServiceNameDescriptor, ts::AACDescriptor, ts::AbstractLogicalChannelDescriptor, ts::AbstractMultilingualDescriptor, ts::AbstractPreferredNameIdentifierDescriptor, ts::AbstractPreferredNameListDescriptor, ts::AdaptationFieldDataDescriptor, ts::AncillaryDataDescriptor, ts::AnnouncementSupportDescriptor, ts::ApplicationDescriptor, ts::ApplicationIconsDescriptor, ts::ApplicationRecordingDescriptor, ts::ApplicationSignallingDescriptor, ts::ApplicationStorageDescriptor, ts::ApplicationUsageDescriptor, ts::AudioPreselectionDescriptor, ts::BouquetNameDescriptor, ts::C2BundleDeliverySystemDescriptor, ts::C2DeliverySystemDescriptor, ts::CableDeliverySystemDescriptor, ts::CAIdentifierDescriptor, ts::CellFrequencyLinkDescriptor, ts::CellListDescriptor, ts::CIAncillaryDataDescriptor, ts::ComponentDescriptor, ts::ContentDescriptor, ts::ContentIdentifierDescriptor, ts::CountryAvailabilityDescriptor, ts::CPCMDeliverySignallingDescriptor, ts::CPDescriptor, ts::CPIdentifierDescriptor, ts::DataBroadcastDescriptor, ts::DataBroadcastIdDescriptor, ts::DefaultAuthorityDescriptor, ts::DIILocationDescriptor, ts::DSNGDescriptor, ts::DTSDescriptor, ts::DTSHDDescriptor, ts::DTSNeuralDescriptor, ts::DVBAC3Descriptor, ts::DVBAC4Descriptor, ts::DVBDTSUHDDescriptor, ts::DVBEnhancedAC3Descriptor, ts::DVBHTMLApplicationBoundaryDescriptor, ts::DVBHTMLApplicationDescriptor, ts::DVBHTMLApplicationLocationDescriptor, ts::DVBJApplicationDescriptor, ts::DVBJApplicationLocationDescriptor, ts::DVBServiceProminenceDescriptor, ts::DVBStuffingDescriptor, ts::DVBTimeShiftedServiceDescriptor, ts::ECMRepetitionRateDescriptor, ts::ExtendedEventDescriptor, ts::ExternalApplicationAuthorizationDescriptor, ts::FrequencyListDescriptor, ts::FTAContentManagementDescriptor, ts::GraphicsConstraintsDescriptor, ts::ImageIconDescriptor, ts::IPMACGenericStreamLocationDescriptor, ts::IPMACPlatformNameDescriptor, ts::IPMACPlatformProviderNameDescriptor, ts::IPMACStreamLocationDescriptor, ts::IPSignallingDescriptor, ts::ISPAccessModeDescriptor, ts::LinkageDescriptor, ts::LocalTimeOffsetDescriptor, ts::MessageDescriptor, ts::MosaicDescriptor, ts::MultilingualComponentDescriptor, ts::MultilingualServiceNameDescriptor, ts::NetworkChangeNotifyDescriptor, ts::NetworkNameDescriptor, ts::NVODReferenceDescriptor, ts::ParentalRatingDescriptor, ts::PartialTransportStreamDescriptor, ts::PDCDescriptor, ts::PrefetchDescriptor, ts::PrivateDataSpecifierDescriptor, ts::ProtectionMessageDescriptor, ts::RARoverDVBstreamDescriptor, ts::RARoverIPDescriptor, ts::RelatedContentDescriptor, ts::RNTScanDescriptor, ts::S2SatelliteDeliverySystemDescriptor, ts::S2XSatelliteDeliverySystemDescriptor, ts::S2Xv2SatelliteDeliverySystemDescriptor, ts::SatelliteDeliverySystemDescriptor, ts::SchedulingDescriptor, ts::ScramblingDescriptor, ts::ServiceAvailabilityDescriptor, ts::ServiceDescriptor, ts::ServiceIdentifierDescriptor, ts::ServiceListDescriptor, ts::ServiceMoveDescriptor, ts::ServiceRelocatedDescriptor, ts::SHDeliverySystemDescriptor, ts::ShortEventDescriptor, ts::ShortSmoothingBufferDescriptor, ts::SimpleApplicationBoundaryDescriptor, ts::SimpleApplicationLocationDescriptor, ts::SSUDataBroadcastIdDescriptor, ts::SSUEnhancedMessageDescriptor, ts::SSUEventNameDescriptor, ts::SSULinkageDescriptor, ts::SSULocationDescriptor, ts::SSUMessageDescriptor, ts::SSUSubgroupAssociationDescriptor, ts::SSUURIDescriptor, ts::StreamIdentifierDescriptor, ts::SubtitlingDescriptor, ts::SupplementaryAudioDescriptor, ts::T2DeliverySystemDescriptor, ts::T2MIDescriptor, ts::TargetIPAddressDescriptor, ts::TargetIPSlashDescriptor, ts::TargetIPSourceSlashDescriptor, ts::TargetIPv6AddressDescriptor, ts::TargetIPv6SlashDescriptor, ts::TargetIPv6SourceSlashDescriptor, ts::TargetMACAddressDescriptor, ts::TargetMACAddressRangeDescriptor, ts::TargetRegionDescriptor, ts::TargetRegionNameDescriptor, ts::TargetSerialNumberDescriptor, ts::TargetSmartcardDescriptor, ts::TelephoneDescriptor, ts::TeletextDescriptor, ts::TerrestrialDeliverySystemDescriptor, ts::TimeShiftedEventDescriptor, ts::TimeSliceFECIdentifierDescriptor, ts::TransportProtocolDescriptor, ts::TransportStreamDescriptor, ts::TTMLSubtitlingDescriptor, ts::TVAIdDescriptor, ts::UpdateDescriptor, ts::URILinkageDescriptor, ts::VBIDataDescriptor, ts::VideoDepthRangeDescriptor, ts::VVCSubpicturesDescriptor, ts::EacemStreamIdentifierDescriptor, ts::EutelsatChannelNumberDescriptor, ts::AreaBroadcastingInformationDescriptor, ts::AudioComponentDescriptor, ts::BasicLocalEventDescriptor, ts::BoardInformationDescriptor, ts::BroadcasterNameDescriptor, ts::CAContractInfoDescriptor, ts::CAEMMTSDescriptor, ts::CarouselCompatibleCompositeDescriptor, ts::CAServiceDescriptor, ts::ConditionalPlaybackDescriptor, ts::ContentAvailabilityDescriptor, ts::DataComponentDescriptor, ts::DataContentDescriptor, ts::DigitalCopyControlDescriptor, ts::DownloadContentDescriptor, ts::EmergencyInformationDescriptor, ts::EventGroupDescriptor, ts::ExtendedBroadcasterDescriptor, ts::HierarchicalTransmissionDescriptor, ts::HybridInformationDescriptor, ts::ISDBAccessControlDescriptor, ts::ISDBComponentGroupDescriptor, ts::ISDBConnectedTransmissionDescriptor, ts::ISDBHyperlinkDescriptor, ts::ISDBLDTLinkageDescriptor, ts::ISDBNetworkIdentifierDescriptor, ts::ISDBTargetRegionDescriptor, ts::ISDBTerrestrialDeliverySystemDescriptor, ts::LogoTransmissionDescriptor, ts::NetworkDownloadContentDescriptor, ts::NodeRelationDescriptor, ts::PartialReceptionDescriptor, ts::PartialTSTimeDescriptor, ts::ReferenceDescriptor, ts::SeriesDescriptor, ts::ServiceGroupDescriptor, ts::ShortNodeInformationDescriptor, ts::SIParameterDescriptor, ts::SIPrimeTSDescriptor, ts::STCReferenceDescriptor, ts::SystemManagementDescriptor, ts::TSInformationDescriptor, ts::VideoDecodeControlDescriptor, ts::AFExtensionsDescriptor, ts::AssociationTagDescriptor, ts::AudioStreamDescriptor, ts::AuxiliaryVideoStreamDescriptor, ts::AVCTimingAndHRDDescriptor, ts::AVCVideoDescriptor, ts::CADescriptor, ts::CarouselIdentifierDescriptor, ts::ContentLabellingDescriptor, ts::CopyrightDescriptor, ts::DataStreamAlignmentDescriptor, ts::DeferredAssociationTagsDescriptor, ts::EVCTimingAndHRDDescriptor, ts::EVCVideoDescriptor, ts::ExternalESIdDescriptor, ts::FMCDescriptor, ts::GreenExtensionDescriptor, ts::HEVCHierarchyExtensionDescriptor, ts::HEVCOperationPointDescriptor, ts::HEVCSubregionDescriptor, ts::HEVCTileSubstreamDescriptor, ts::HEVCTimingAndHRDDescriptor, ts::HEVCVideoDescriptor, ts::HierarchyDescriptor, ts::IBPDescriptor, ts::IODDescriptor, ts::ISO639LanguageDescriptor, ts::J2KVideoDescriptor, ts::JPEGXSVideoDescriptor, ts::LCEVCLinkageDescriptor, ts::LCEVCVideoDescriptor, ts::M4MuxBufferSizeDescriptor, ts::M4MuxTimingDescriptor, ts::MaximumBitrateDescriptor, ts::MediaServiceKindDescriptor, ts::MetadataDescriptor, ts::MetadataPointerDescriptor, ts::MetadataSTDDescriptor, ts::MPEG2AACAudioDescriptor, ts::MPEG2StereoscopicVideoFormatDescriptor, ts::MPEG4AudioDescriptor, ts::MPEG4AudioExtensionDescriptor, ts::MPEG4TextDescriptor, ts::MPEG4VideoDescriptor, ts::MPEGH3DAudioCommandDescriptor, ts::MPEGH3DAudioConfigDescriptor, ts::MPEGH3DAudioDescriptor, ts::MPEGH3DAudioDRCLoudnessDescriptor, ts::MPEGH3DAudioMultiStreamDescriptor, ts::MPEGH3DAudioSceneDescriptor, ts::MPEGH3DAudioTextLabelDescriptor, ts::MultiplexBufferDescriptor, ts::MultiplexBufferUtilizationDescriptor, ts::MuxCodeDescriptor, ts::MVCExtensionDescriptor, ts::MVCOperationPointDescriptor, ts::NPTEndpointDescriptor, ts::NPTReferenceDescriptor, ts::PrivateDataIndicatorDescriptor, ts::QualityExtensionDescriptor, ts::RegistrationDescriptor, ts::SLDescriptor, ts::SmoothingBufferDescriptor, ts::STDDescriptor, ts::StereoscopicProgramInfoDescriptor, ts::StereoscopicVideoInfoDescriptor, ts::StreamEventDescriptor, ts::StreamModeDescriptor, ts::SVCExtensionDescriptor, ts::SystemClockDescriptor, ts::TargetBackgroundGridDescriptor, ts::TransportProfileDescriptor, ts::VideoStreamDescriptor, ts::VideoWindowDescriptor, ts::VirtualSegmentationDescriptor, ts::VVCTimingAndHRDDescriptor, ts::VVCVideoDescriptor, ts::NorDigLogicalChannelDescriptorV1, ts::NorDigLogicalChannelDescriptorV2, ts::CueIdentifierDescriptor, ts::EASAudioFileDescriptor, ts::EASInbandDetailsChannelDescriptor, ts::EASInbandExceptionChannelsDescriptor, ts::EASMetadataDescriptor, ts::SpliceAvailDescriptor, ts::SpliceDTMFDescriptor, ts::SpliceSegmentationDescriptor, ts::SpliceTimeDescriptor, ts::SkyLogicalChannelNumberDescriptor, ts::UWAVideoStreamDescriptor, ts::SpliceInsert, ts::SpliceSchedule, ts::ATSCEIT, ts::DCCSCT, ts::DCCT, ts::ETT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::CIT, ts::DiscontinuityInformationTable, ts::EIT, ts::INT, ts::RCT, ts::RNT, ts::RST, ts::SAT, ts::SDT, ts::SelectionInformationTable, ts::TDT, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::DCT, ts::DLT, ts::ERT, ts::ITT, ts::LDT, ts::LIT, ts::NBIT, ts::PCAT, ts::SDTT, ts::PAT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, ts::AbstractDescriptorsTable, and ts::AbstractTransportListTable.

◆ buildXML()

virtual void ts::AbstractSignalization::buildXML ( DuckContext duck,
xml::Element root 
) const
protectedpure virtual

Helper method to convert this object to XML.

It is called by toXML() only when the object is valid. The root element is already built with the appropriate XML node name. In buildXML(), the subclass shall simply populate the XML node.

Parameters
[in,out]rootThe root node for the new XML tree.
[in,out]duckTSDuck execution context.

Implemented in ts::AV1VideoDescriptor, ts::ATSCAC3AudioStreamDescriptor, ts::ATSCEAC3AudioDescriptor, ts::ATSCStuffingDescriptor, ts::ATSCTimeShiftedServiceDescriptor, ts::CaptionServiceDescriptor, ts::ComponentNameDescriptor, ts::ContentAdvisoryDescriptor, ts::DCCArrivingRequestDescriptor, ts::DCCDepartingRequestDescriptor, ts::ExtendedChannelNameDescriptor, ts::GenreDescriptor, ts::RedistributionControlDescriptor, ts::ServiceLocationDescriptor, ts::AVS2AudioDescriptor, ts::AVS3AudioDescriptor, ts::AVS3VideoDescriptor, ts::DTGGuidanceDescriptor, ts::DTGServiceAttributeDescriptor, ts::DTGShortServiceNameDescriptor, ts::AACDescriptor, ts::AbstractLogicalChannelDescriptor, ts::AbstractMultilingualDescriptor, ts::AbstractPreferredNameIdentifierDescriptor, ts::AbstractPreferredNameListDescriptor, ts::AdaptationFieldDataDescriptor, ts::AncillaryDataDescriptor, ts::AnnouncementSupportDescriptor, ts::ApplicationDescriptor, ts::ApplicationIconsDescriptor, ts::ApplicationRecordingDescriptor, ts::ApplicationSignallingDescriptor, ts::ApplicationStorageDescriptor, ts::ApplicationUsageDescriptor, ts::AudioPreselectionDescriptor, ts::BouquetNameDescriptor, ts::C2BundleDeliverySystemDescriptor, ts::C2DeliverySystemDescriptor, ts::CableDeliverySystemDescriptor, ts::CAIdentifierDescriptor, ts::CellFrequencyLinkDescriptor, ts::CellListDescriptor, ts::CIAncillaryDataDescriptor, ts::ComponentDescriptor, ts::ContentDescriptor, ts::ContentIdentifierDescriptor, ts::CountryAvailabilityDescriptor, ts::CPCMDeliverySignallingDescriptor, ts::CPDescriptor, ts::CPIdentifierDescriptor, ts::DataBroadcastDescriptor, ts::DataBroadcastIdDescriptor, ts::DefaultAuthorityDescriptor, ts::DIILocationDescriptor, ts::DSNGDescriptor, ts::DTSDescriptor, ts::DTSHDDescriptor, ts::DTSNeuralDescriptor, ts::DVBAC3Descriptor, ts::DVBAC4Descriptor, ts::DVBDTSUHDDescriptor, ts::DVBEnhancedAC3Descriptor, ts::DVBHTMLApplicationBoundaryDescriptor, ts::DVBHTMLApplicationDescriptor, ts::DVBHTMLApplicationLocationDescriptor, ts::DVBJApplicationDescriptor, ts::DVBJApplicationLocationDescriptor, ts::DVBServiceProminenceDescriptor, ts::DVBStuffingDescriptor, ts::DVBTimeShiftedServiceDescriptor, ts::ECMRepetitionRateDescriptor, ts::ExtendedEventDescriptor, ts::ExternalApplicationAuthorizationDescriptor, ts::FrequencyListDescriptor, ts::FTAContentManagementDescriptor, ts::GraphicsConstraintsDescriptor, ts::ImageIconDescriptor, ts::IPMACGenericStreamLocationDescriptor, ts::IPMACPlatformNameDescriptor, ts::IPMACPlatformProviderNameDescriptor, ts::IPMACStreamLocationDescriptor, ts::IPSignallingDescriptor, ts::ISPAccessModeDescriptor, ts::LinkageDescriptor, ts::LocalTimeOffsetDescriptor, ts::MessageDescriptor, ts::MosaicDescriptor, ts::MultilingualComponentDescriptor, ts::MultilingualServiceNameDescriptor, ts::NetworkChangeNotifyDescriptor, ts::NetworkNameDescriptor, ts::NVODReferenceDescriptor, ts::ParentalRatingDescriptor, ts::PartialTransportStreamDescriptor, ts::PDCDescriptor, ts::PrefetchDescriptor, ts::PrivateDataSpecifierDescriptor, ts::ProtectionMessageDescriptor, ts::RARoverDVBstreamDescriptor, ts::RARoverIPDescriptor, ts::RelatedContentDescriptor, ts::RNTScanDescriptor, ts::S2SatelliteDeliverySystemDescriptor, ts::S2XSatelliteDeliverySystemDescriptor, ts::S2Xv2SatelliteDeliverySystemDescriptor, ts::SatelliteDeliverySystemDescriptor, ts::SchedulingDescriptor, ts::ScramblingDescriptor, ts::ServiceAvailabilityDescriptor, ts::ServiceDescriptor, ts::ServiceIdentifierDescriptor, ts::ServiceListDescriptor, ts::ServiceMoveDescriptor, ts::ServiceRelocatedDescriptor, ts::SHDeliverySystemDescriptor, ts::ShortEventDescriptor, ts::ShortSmoothingBufferDescriptor, ts::SimpleApplicationBoundaryDescriptor, ts::SimpleApplicationLocationDescriptor, ts::SSUDataBroadcastIdDescriptor, ts::SSUEnhancedMessageDescriptor, ts::SSUEventNameDescriptor, ts::SSULinkageDescriptor, ts::SSULocationDescriptor, ts::SSUMessageDescriptor, ts::SSUSubgroupAssociationDescriptor, ts::SSUURIDescriptor, ts::StreamIdentifierDescriptor, ts::SubtitlingDescriptor, ts::SupplementaryAudioDescriptor, ts::T2DeliverySystemDescriptor, ts::T2MIDescriptor, ts::TargetIPAddressDescriptor, ts::TargetIPSlashDescriptor, ts::TargetIPSourceSlashDescriptor, ts::TargetIPv6AddressDescriptor, ts::TargetIPv6SlashDescriptor, ts::TargetIPv6SourceSlashDescriptor, ts::TargetMACAddressDescriptor, ts::TargetMACAddressRangeDescriptor, ts::TargetRegionDescriptor, ts::TargetRegionNameDescriptor, ts::TargetSerialNumberDescriptor, ts::TargetSmartcardDescriptor, ts::TelephoneDescriptor, ts::TeletextDescriptor, ts::TerrestrialDeliverySystemDescriptor, ts::TimeShiftedEventDescriptor, ts::TimeSliceFECIdentifierDescriptor, ts::TransportProtocolDescriptor, ts::TransportStreamDescriptor, ts::TTMLSubtitlingDescriptor, ts::TVAIdDescriptor, ts::UpdateDescriptor, ts::URILinkageDescriptor, ts::VBIDataDescriptor, ts::VideoDepthRangeDescriptor, ts::VVCSubpicturesDescriptor, ts::EacemStreamIdentifierDescriptor, ts::EutelsatChannelNumberDescriptor, ts::AreaBroadcastingInformationDescriptor, ts::AudioComponentDescriptor, ts::BasicLocalEventDescriptor, ts::BoardInformationDescriptor, ts::BroadcasterNameDescriptor, ts::CAContractInfoDescriptor, ts::CAEMMTSDescriptor, ts::CarouselCompatibleCompositeDescriptor, ts::CAServiceDescriptor, ts::ConditionalPlaybackDescriptor, ts::ContentAvailabilityDescriptor, ts::DataComponentDescriptor, ts::DataContentDescriptor, ts::DigitalCopyControlDescriptor, ts::DownloadContentDescriptor, ts::EmergencyInformationDescriptor, ts::EventGroupDescriptor, ts::ExtendedBroadcasterDescriptor, ts::HierarchicalTransmissionDescriptor, ts::HybridInformationDescriptor, ts::ISDBAccessControlDescriptor, ts::ISDBComponentGroupDescriptor, ts::ISDBConnectedTransmissionDescriptor, ts::ISDBHyperlinkDescriptor, ts::ISDBLDTLinkageDescriptor, ts::ISDBNetworkIdentifierDescriptor, ts::ISDBTargetRegionDescriptor, ts::ISDBTerrestrialDeliverySystemDescriptor, ts::LogoTransmissionDescriptor, ts::NetworkDownloadContentDescriptor, ts::NodeRelationDescriptor, ts::PartialReceptionDescriptor, ts::PartialTSTimeDescriptor, ts::ReferenceDescriptor, ts::SeriesDescriptor, ts::ServiceGroupDescriptor, ts::ShortNodeInformationDescriptor, ts::SIParameterDescriptor, ts::SIPrimeTSDescriptor, ts::STCReferenceDescriptor, ts::SystemManagementDescriptor, ts::TSInformationDescriptor, ts::VideoDecodeControlDescriptor, ts::AFExtensionsDescriptor, ts::AssociationTagDescriptor, ts::AudioStreamDescriptor, ts::AuxiliaryVideoStreamDescriptor, ts::AVCTimingAndHRDDescriptor, ts::AVCVideoDescriptor, ts::CADescriptor, ts::CarouselIdentifierDescriptor, ts::ContentLabellingDescriptor, ts::CopyrightDescriptor, ts::DataStreamAlignmentDescriptor, ts::DeferredAssociationTagsDescriptor, ts::EVCTimingAndHRDDescriptor, ts::EVCVideoDescriptor, ts::ExternalESIdDescriptor, ts::FMCDescriptor, ts::GreenExtensionDescriptor, ts::HEVCHierarchyExtensionDescriptor, ts::HEVCOperationPointDescriptor, ts::HEVCSubregionDescriptor, ts::HEVCTileSubstreamDescriptor, ts::HEVCTimingAndHRDDescriptor, ts::HEVCVideoDescriptor, ts::HierarchyDescriptor, ts::IBPDescriptor, ts::IODDescriptor, ts::ISO639LanguageDescriptor, ts::J2KVideoDescriptor, ts::JPEGXSVideoDescriptor, ts::LCEVCLinkageDescriptor, ts::LCEVCVideoDescriptor, ts::M4MuxBufferSizeDescriptor, ts::M4MuxTimingDescriptor, ts::MaximumBitrateDescriptor, ts::MediaServiceKindDescriptor, ts::MetadataDescriptor, ts::MetadataPointerDescriptor, ts::MetadataSTDDescriptor, ts::MPEG2AACAudioDescriptor, ts::MPEG2StereoscopicVideoFormatDescriptor, ts::MPEG4AudioDescriptor, ts::MPEG4AudioExtensionDescriptor, ts::MPEG4TextDescriptor, ts::MPEG4VideoDescriptor, ts::MPEGH3DAudioCommandDescriptor, ts::MPEGH3DAudioConfigDescriptor, ts::MPEGH3DAudioDescriptor, ts::MPEGH3DAudioDRCLoudnessDescriptor, ts::MPEGH3DAudioMultiStreamDescriptor, ts::MPEGH3DAudioSceneDescriptor, ts::MPEGH3DAudioTextLabelDescriptor, ts::MultiplexBufferDescriptor, ts::MultiplexBufferUtilizationDescriptor, ts::MuxCodeDescriptor, ts::MVCExtensionDescriptor, ts::MVCOperationPointDescriptor, ts::NPTEndpointDescriptor, ts::NPTReferenceDescriptor, ts::PrivateDataIndicatorDescriptor, ts::QualityExtensionDescriptor, ts::RegistrationDescriptor, ts::SLDescriptor, ts::SmoothingBufferDescriptor, ts::STDDescriptor, ts::StereoscopicProgramInfoDescriptor, ts::StereoscopicVideoInfoDescriptor, ts::StreamEventDescriptor, ts::StreamModeDescriptor, ts::SVCExtensionDescriptor, ts::SystemClockDescriptor, ts::TargetBackgroundGridDescriptor, ts::TransportProfileDescriptor, ts::VideoStreamDescriptor, ts::VideoWindowDescriptor, ts::VirtualSegmentationDescriptor, ts::VVCTimingAndHRDDescriptor, ts::VVCVideoDescriptor, ts::NorDigLogicalChannelDescriptorV1, ts::NorDigLogicalChannelDescriptorV2, ts::CueIdentifierDescriptor, ts::EASAudioFileDescriptor, ts::EASInbandDetailsChannelDescriptor, ts::EASInbandExceptionChannelsDescriptor, ts::EASMetadataDescriptor, ts::SpliceAvailDescriptor, ts::SpliceDTMFDescriptor, ts::SpliceSegmentationDescriptor, ts::SpliceTimeDescriptor, ts::SkyLogicalChannelNumberDescriptor, ts::UWAVideoStreamDescriptor, ts::SpliceInsert, ts::SpliceSchedule, ts::ATSCEIT, ts::DCCSCT, ts::DCCT, ts::ETT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::BAT, ts::CIT, ts::DiscontinuityInformationTable, ts::EIT, ts::INT, ts::NIT, ts::RCT, ts::RNT, ts::RST, ts::SAT, ts::SDT, ts::SelectionInformationTable, ts::TDT, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::DCT, ts::DLT, ts::ERT, ts::ITT, ts::LDT, ts::LIT, ts::NBIT, ts::PCAT, ts::SDTT, ts::DSMCCStreamDescriptorsTable, ts::PAT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, and ts::AbstractDescriptorsTable.

◆ analyzeXML()

virtual bool ts::AbstractSignalization::analyzeXML ( DuckContext duck,
const xml::Element element 
)
protectedpure virtual

Helper method to convert this object from XML.

It is called by fromXML() after checking the validity of the XML node name. In analyzeXML(), the subclass shall populate the C++ object from the content of the XML node. If analyzeXML() returns false, this table or descriptor object is then invalidated and cleared.

Parameters
[in,out]duckTSDuck execution context.
[in]elementXML element to convert.
Returns
True if the analysis is correct, false otherwise.

Implemented in ts::AV1VideoDescriptor, ts::ATSCAC3AudioStreamDescriptor, ts::ATSCEAC3AudioDescriptor, ts::ATSCStuffingDescriptor, ts::ATSCTimeShiftedServiceDescriptor, ts::CaptionServiceDescriptor, ts::ComponentNameDescriptor, ts::ContentAdvisoryDescriptor, ts::DCCArrivingRequestDescriptor, ts::DCCDepartingRequestDescriptor, ts::ExtendedChannelNameDescriptor, ts::GenreDescriptor, ts::RedistributionControlDescriptor, ts::ServiceLocationDescriptor, ts::AVS2AudioDescriptor, ts::AVS3AudioDescriptor, ts::AVS3VideoDescriptor, ts::DTGGuidanceDescriptor, ts::DTGServiceAttributeDescriptor, ts::DTGShortServiceNameDescriptor, ts::AACDescriptor, ts::AbstractLogicalChannelDescriptor, ts::AbstractMultilingualDescriptor, ts::AbstractPreferredNameIdentifierDescriptor, ts::AbstractPreferredNameListDescriptor, ts::AdaptationFieldDataDescriptor, ts::AncillaryDataDescriptor, ts::AnnouncementSupportDescriptor, ts::ApplicationDescriptor, ts::ApplicationIconsDescriptor, ts::ApplicationRecordingDescriptor, ts::ApplicationSignallingDescriptor, ts::ApplicationStorageDescriptor, ts::ApplicationUsageDescriptor, ts::AudioPreselectionDescriptor, ts::BouquetNameDescriptor, ts::C2BundleDeliverySystemDescriptor, ts::C2DeliverySystemDescriptor, ts::CableDeliverySystemDescriptor, ts::CAIdentifierDescriptor, ts::CellFrequencyLinkDescriptor, ts::CellListDescriptor, ts::CIAncillaryDataDescriptor, ts::ComponentDescriptor, ts::ContentDescriptor, ts::ContentIdentifierDescriptor, ts::CountryAvailabilityDescriptor, ts::CPCMDeliverySignallingDescriptor, ts::CPDescriptor, ts::CPIdentifierDescriptor, ts::DataBroadcastDescriptor, ts::DataBroadcastIdDescriptor, ts::DefaultAuthorityDescriptor, ts::DIILocationDescriptor, ts::DSNGDescriptor, ts::DTSDescriptor, ts::DTSHDDescriptor, ts::DTSNeuralDescriptor, ts::DVBAC3Descriptor, ts::DVBAC4Descriptor, ts::DVBDTSUHDDescriptor, ts::DVBEnhancedAC3Descriptor, ts::DVBHTMLApplicationBoundaryDescriptor, ts::DVBHTMLApplicationDescriptor, ts::DVBHTMLApplicationLocationDescriptor, ts::DVBJApplicationDescriptor, ts::DVBJApplicationLocationDescriptor, ts::DVBServiceProminenceDescriptor, ts::DVBStuffingDescriptor, ts::DVBTimeShiftedServiceDescriptor, ts::ECMRepetitionRateDescriptor, ts::ExtendedEventDescriptor, ts::ExternalApplicationAuthorizationDescriptor, ts::FrequencyListDescriptor, ts::FTAContentManagementDescriptor, ts::GraphicsConstraintsDescriptor, ts::ImageIconDescriptor, ts::IPMACGenericStreamLocationDescriptor, ts::IPMACPlatformNameDescriptor, ts::IPMACPlatformProviderNameDescriptor, ts::IPMACStreamLocationDescriptor, ts::IPSignallingDescriptor, ts::ISPAccessModeDescriptor, ts::LinkageDescriptor, ts::LocalTimeOffsetDescriptor, ts::MessageDescriptor, ts::MosaicDescriptor, ts::MultilingualComponentDescriptor, ts::MultilingualServiceNameDescriptor, ts::NetworkChangeNotifyDescriptor, ts::NetworkNameDescriptor, ts::NVODReferenceDescriptor, ts::ParentalRatingDescriptor, ts::PartialTransportStreamDescriptor, ts::PDCDescriptor, ts::PrefetchDescriptor, ts::PrivateDataSpecifierDescriptor, ts::ProtectionMessageDescriptor, ts::RARoverDVBstreamDescriptor, ts::RARoverIPDescriptor, ts::RelatedContentDescriptor, ts::RNTScanDescriptor, ts::S2SatelliteDeliverySystemDescriptor, ts::S2XSatelliteDeliverySystemDescriptor, ts::S2Xv2SatelliteDeliverySystemDescriptor, ts::SatelliteDeliverySystemDescriptor, ts::SchedulingDescriptor, ts::ScramblingDescriptor, ts::ServiceAvailabilityDescriptor, ts::ServiceDescriptor, ts::ServiceIdentifierDescriptor, ts::ServiceListDescriptor, ts::ServiceMoveDescriptor, ts::ServiceRelocatedDescriptor, ts::SHDeliverySystemDescriptor, ts::ShortEventDescriptor, ts::ShortSmoothingBufferDescriptor, ts::SimpleApplicationBoundaryDescriptor, ts::SimpleApplicationLocationDescriptor, ts::SSUDataBroadcastIdDescriptor, ts::SSUEnhancedMessageDescriptor, ts::SSUEventNameDescriptor, ts::SSULinkageDescriptor, ts::SSULocationDescriptor, ts::SSUMessageDescriptor, ts::SSUSubgroupAssociationDescriptor, ts::SSUURIDescriptor, ts::StreamIdentifierDescriptor, ts::SubtitlingDescriptor, ts::SupplementaryAudioDescriptor, ts::T2DeliverySystemDescriptor, ts::T2MIDescriptor, ts::TargetIPAddressDescriptor, ts::TargetIPSlashDescriptor, ts::TargetIPSourceSlashDescriptor, ts::TargetIPv6AddressDescriptor, ts::TargetIPv6SlashDescriptor, ts::TargetIPv6SourceSlashDescriptor, ts::TargetMACAddressDescriptor, ts::TargetMACAddressRangeDescriptor, ts::TargetRegionDescriptor, ts::TargetRegionNameDescriptor, ts::TargetSerialNumberDescriptor, ts::TargetSmartcardDescriptor, ts::TelephoneDescriptor, ts::TeletextDescriptor, ts::TerrestrialDeliverySystemDescriptor, ts::TimeShiftedEventDescriptor, ts::TimeSliceFECIdentifierDescriptor, ts::TransportProtocolDescriptor, ts::TransportStreamDescriptor, ts::TTMLSubtitlingDescriptor, ts::TVAIdDescriptor, ts::UpdateDescriptor, ts::URILinkageDescriptor, ts::VBIDataDescriptor, ts::VideoDepthRangeDescriptor, ts::VVCSubpicturesDescriptor, ts::EacemStreamIdentifierDescriptor, ts::EutelsatChannelNumberDescriptor, ts::AreaBroadcastingInformationDescriptor, ts::AudioComponentDescriptor, ts::BasicLocalEventDescriptor, ts::BoardInformationDescriptor, ts::BroadcasterNameDescriptor, ts::CAContractInfoDescriptor, ts::CAEMMTSDescriptor, ts::CarouselCompatibleCompositeDescriptor, ts::CAServiceDescriptor, ts::ConditionalPlaybackDescriptor, ts::ContentAvailabilityDescriptor, ts::DataComponentDescriptor, ts::DataContentDescriptor, ts::DigitalCopyControlDescriptor, ts::DownloadContentDescriptor, ts::EmergencyInformationDescriptor, ts::EventGroupDescriptor, ts::ExtendedBroadcasterDescriptor, ts::HierarchicalTransmissionDescriptor, ts::HybridInformationDescriptor, ts::ISDBAccessControlDescriptor, ts::ISDBComponentGroupDescriptor, ts::ISDBConnectedTransmissionDescriptor, ts::ISDBHyperlinkDescriptor, ts::ISDBLDTLinkageDescriptor, ts::ISDBNetworkIdentifierDescriptor, ts::ISDBTargetRegionDescriptor, ts::ISDBTerrestrialDeliverySystemDescriptor, ts::LogoTransmissionDescriptor, ts::NetworkDownloadContentDescriptor, ts::NodeRelationDescriptor, ts::PartialReceptionDescriptor, ts::PartialTSTimeDescriptor, ts::ReferenceDescriptor, ts::SeriesDescriptor, ts::ServiceGroupDescriptor, ts::ShortNodeInformationDescriptor, ts::SIParameterDescriptor, ts::SIPrimeTSDescriptor, ts::STCReferenceDescriptor, ts::SystemManagementDescriptor, ts::TSInformationDescriptor, ts::VideoDecodeControlDescriptor, ts::AFExtensionsDescriptor, ts::AssociationTagDescriptor, ts::AudioStreamDescriptor, ts::AuxiliaryVideoStreamDescriptor, ts::AVCTimingAndHRDDescriptor, ts::AVCVideoDescriptor, ts::CADescriptor, ts::CarouselIdentifierDescriptor, ts::ContentLabellingDescriptor, ts::CopyrightDescriptor, ts::DataStreamAlignmentDescriptor, ts::DeferredAssociationTagsDescriptor, ts::EVCTimingAndHRDDescriptor, ts::EVCVideoDescriptor, ts::ExternalESIdDescriptor, ts::FMCDescriptor, ts::GreenExtensionDescriptor, ts::HEVCHierarchyExtensionDescriptor, ts::HEVCOperationPointDescriptor, ts::HEVCSubregionDescriptor, ts::HEVCTileSubstreamDescriptor, ts::HEVCTimingAndHRDDescriptor, ts::HEVCVideoDescriptor, ts::HierarchyDescriptor, ts::IBPDescriptor, ts::IODDescriptor, ts::ISO639LanguageDescriptor, ts::J2KVideoDescriptor, ts::JPEGXSVideoDescriptor, ts::LCEVCLinkageDescriptor, ts::LCEVCVideoDescriptor, ts::M4MuxBufferSizeDescriptor, ts::M4MuxTimingDescriptor, ts::MaximumBitrateDescriptor, ts::MediaServiceKindDescriptor, ts::MetadataDescriptor, ts::MetadataPointerDescriptor, ts::MetadataSTDDescriptor, ts::MPEG2AACAudioDescriptor, ts::MPEG2StereoscopicVideoFormatDescriptor, ts::MPEG4AudioDescriptor, ts::MPEG4AudioExtensionDescriptor, ts::MPEG4TextDescriptor, ts::MPEG4VideoDescriptor, ts::MPEGH3DAudioCommandDescriptor, ts::MPEGH3DAudioConfigDescriptor, ts::MPEGH3DAudioDescriptor, ts::MPEGH3DAudioDRCLoudnessDescriptor, ts::MPEGH3DAudioMultiStreamDescriptor, ts::MPEGH3DAudioSceneDescriptor, ts::MPEGH3DAudioTextLabelDescriptor, ts::MultiplexBufferDescriptor, ts::MultiplexBufferUtilizationDescriptor, ts::MuxCodeDescriptor, ts::MVCExtensionDescriptor, ts::MVCOperationPointDescriptor, ts::NPTEndpointDescriptor, ts::NPTReferenceDescriptor, ts::PrivateDataIndicatorDescriptor, ts::QualityExtensionDescriptor, ts::RegistrationDescriptor, ts::SLDescriptor, ts::SmoothingBufferDescriptor, ts::STDDescriptor, ts::StereoscopicProgramInfoDescriptor, ts::StereoscopicVideoInfoDescriptor, ts::StreamEventDescriptor, ts::StreamModeDescriptor, ts::SVCExtensionDescriptor, ts::SystemClockDescriptor, ts::TargetBackgroundGridDescriptor, ts::TransportProfileDescriptor, ts::VideoStreamDescriptor, ts::VideoWindowDescriptor, ts::VirtualSegmentationDescriptor, ts::VVCTimingAndHRDDescriptor, ts::VVCVideoDescriptor, ts::NorDigLogicalChannelDescriptorV1, ts::NorDigLogicalChannelDescriptorV2, ts::CueIdentifierDescriptor, ts::EASAudioFileDescriptor, ts::EASInbandDetailsChannelDescriptor, ts::EASInbandExceptionChannelsDescriptor, ts::EASMetadataDescriptor, ts::SpliceAvailDescriptor, ts::SpliceDTMFDescriptor, ts::SpliceSegmentationDescriptor, ts::SpliceTimeDescriptor, ts::SkyLogicalChannelNumberDescriptor, ts::UWAVideoStreamDescriptor, ts::SpliceInsert, ts::SpliceSchedule, ts::ATSCEIT, ts::DCCSCT, ts::DCCT, ts::ETT, ts::MGT, ts::RRT, ts::STT, ts::VCT, ts::AIT, ts::BAT, ts::CIT, ts::DiscontinuityInformationTable, ts::EIT, ts::INT, ts::NIT, ts::RCT, ts::RNT, ts::RST, ts::SAT, ts::SDT, ts::SelectionInformationTable, ts::TDT, ts::TOT, ts::UNT, ts::BIT, ts::CDT, ts::DCT, ts::DLT, ts::ERT, ts::ITT, ts::LDT, ts::LIT, ts::NBIT, ts::PCAT, ts::SDTT, ts::DSMCCStreamDescriptorsTable, ts::PAT, ts::PMT, ts::CableEmergencyAlertTable, ts::SpliceInformationTable, and ts::AbstractDescriptorsTable.


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