TSDuck v3.40-4025
MPEG Transport Stream Toolkit
|
Abstract base class for MPEG PSI/SI tables and descriptors. More...
#include <tsAbstractSignalization.h>
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, INT alternate=0, size_t bits=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::Element * | toXML (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, INT alternate=0, size_t bits=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. | |
AbstractSignalization & | operator= (AbstractSignalization &&other) |
Assignment move operator. | |
AbstractSignalization & | operator= (const AbstractSignalization &other) |
Assignment operator. | |
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.
|
protected |
Protected constructor for subclasses.
[in] | xml_name | Table or descriptor name, as used in XML structures. |
[in] | standards | A bit mask of standards which define this structure. |
[in] | xml_legacy_name | Table or descriptor legacy XML name. Ignored if null pointer. |
|
protecteddefault |
Copy constructor.
Use default implementation, just tell the compiler we understand the consequences of copying a pointer member.
[in] | other | The other instance to copy. |
|
protecteddefault |
Move constructor.
Use default implementation, just tell the compiler we understand the consequences of copying a pointer member.
[in] | other | The other instance to copy. |
|
inline |
Check if this object is valid.
|
inline |
Invalidate this object.
This object must be rebuilt.
|
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.
UString ts::AbstractSignalization::xmlName | ( | ) | const |
Get the XMl node name representing this table or descriptor.
|
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.
[in,out] | duck | TSDuck execution context. |
[in,out] | parent | The parent node for the new XML tree. |
Reimplemented in ts::AbstractTable.
|
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.
[in,out] | duck | TSDuck execution context. |
[in] | element | XML element to convert. |
Reimplemented in ts::AbstractTable.
|
overridevirtual |
Get the list of standards which define this object.
Implements ts::AbstractDefinedByStandards.
Reimplemented in ts::AbstractDescriptor.
|
inlinestatic |
Get a name from a specified section in the DVB names file.
INT | An integer type. |
[in] | xml_name | Table or descriptor name, as used in XML structures. |
[in] | section | Name 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] | value | Value to get the name for. |
[in] | flags | Presentation flags. |
[in] | alternate | Display this integer value if flags ALTERNATE is set. |
[in] | bits | Optional size in bits of the displayed data. Used in replacement of the "Bits=XX" directive in the .names file. |
|
inline |
Get a name from a specified section in the DVB names file for that signalization structure.
INT | An integer type. |
[in] | section | Name 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] | value | Value to get the name for. |
[in] | flags | Presentation flags. |
[in] | alternate | Display this integer value if flags ALTERNATE is set. |
[in] | bits | Optional size in bits of the displayed data. Used in replacement of the "Bits=XX" directive in the .names file. |
|
protected |
Assignment operator.
[in] | other | The other instance to copy. |
|
protected |
Assignment move operator.
[in] | other | The other instance to copy. |
|
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::XAITLocationDescriptor, ts::XAITPIDDescriptor, 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.
|
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.
[in,out] | root | The root node for the new XML tree. |
[in,out] | duck | TSDuck 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::XAITLocationDescriptor, ts::XAITPIDDescriptor, 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.
|
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.
[in,out] | duck | TSDuck execution context. |
[in] | element | XML element to convert. |
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::XAITLocationDescriptor, ts::XAITPIDDescriptor, 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.