TSDuck v3.43-4441
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts::DSMCCCompatibilityDescriptor Class Reference

DSM-CC compatibilityDescriptor() structure. More...

#include <tsDSMCCCompatibilityDescriptor.h>

Classes

class  Descriptor
 DSM-CC descriptor in a compatibilityDescriptor() structure. More...
 
class  SubDescriptor
 DSM-CC SubDescriptor. More...
 

Public Member Functions

 DSMCCCompatibilityDescriptor ()=default
 Default constructor.
 
size_t binarySize () const
 Total number of bytes that is required to serialize the compatibilityDescriptor().
 
void clear ()
 Clear the content of the compatibilityDescriptor() structure.
 
void deserialize (PSIBuffer &buf)
 Deserialize the compatibilityDescriptor().
 
bool empty () const
 Check if the compatibilityDescriptor() is sempty.
 
bool fromXML (DuckContext &duck, const xml::Element *parent, bool required=true, const UChar *xml_name=DEFAULT_XML_NAME)
 This method decodes an XML compatibilityDescriptor().
 
void serialize (PSIBuffer &buf, bool zero_size_if_empty=false) const
 Serialize the compatibilityDescriptor().
 
xml::ElementtoXML (DuckContext &duck, xml::Element *parent, bool only_not_empty=false, const UChar *xml_name=DEFAULT_XML_NAME) const
 This method converts a compatibilityDescriptor() to XML.
 

Static Public Member Functions

static bool Display (TablesDisplay &display, PSIBuffer &buf, const UString &margin)
 A static method to display a compatibilityDescriptor().
 

Public Attributes

std::list< Descriptordescs {}
 The compatibilityDescriptor() structure only contains a list of descriptors.
 

Static Public Attributes

static constexpr const UCharDEFAULT_XML_NAME = u"compatibilityDescriptor"
 Default XML name for a compatibilityDescriptor() structure.
 

Detailed Description

DSM-CC compatibilityDescriptor() structure.

See also
ISO/IEC 13818-6, 6.1
ATSC A/90, 6.1

Member Function Documentation

◆ binarySize()

size_t ts::DSMCCCompatibilityDescriptor::binarySize ( ) const

Total number of bytes that is required to serialize the compatibilityDescriptor().

Returns
The total number of bytes that is required to serialize the compatibilityDescriptor().

◆ empty()

bool ts::DSMCCCompatibilityDescriptor::empty ( ) const
inline

Check if the compatibilityDescriptor() is sempty.

Returns
True if the compatibilityDescriptor() is empty.

◆ serialize()

void ts::DSMCCCompatibilityDescriptor::serialize ( PSIBuffer buf,
bool  zero_size_if_empty = false 
) const

Serialize the compatibilityDescriptor().

Parameters
[in,out]bufSerialization buffer.
[in]zero_size_if_emptyIf true and the compatibilityDescriptor() is empty (no descriptor), generate a zero-size structure, without number of descriptors.

◆ deserialize()

void ts::DSMCCCompatibilityDescriptor::deserialize ( PSIBuffer buf)

Deserialize the compatibilityDescriptor().

Parameters
[in,out]bufDeserialization buffer.

◆ Display()

static bool ts::DSMCCCompatibilityDescriptor::Display ( TablesDisplay display,
PSIBuffer buf,
const UString margin 
)
static

A static method to display a compatibilityDescriptor().

Parameters
[in,out]displayDisplay engine.
[in,out]bufA PSIBuffer over the compatibilityDescriptor().
[in]marginLeft margin content.
Returns
True on success, false on error.

◆ toXML()

xml::Element * ts::DSMCCCompatibilityDescriptor::toXML ( DuckContext duck,
xml::Element parent,
bool  only_not_empty = false,
const UChar xml_name = DEFAULT_XML_NAME 
) const

This method converts a compatibilityDescriptor() to XML.

Parameters
[in,out]duckTSDuck execution context.
[in,out]parentThe parent node for the XML compatibilityDescriptor().
[in]only_not_emptyIf true and the compatibilityDescriptor() is empty, do not insert an XML element.
[in]xml_nameName of the XML element to generate.
Returns
The XML element representing the compatibilityDescriptor() or the null pointer if only_not_empty is true and the compatibilityDescriptor() is empty.

◆ fromXML()

bool ts::DSMCCCompatibilityDescriptor::fromXML ( DuckContext duck,
const xml::Element parent,
bool  required = true,
const UChar xml_name = DEFAULT_XML_NAME 
)

This method decodes an XML compatibilityDescriptor().

Parameters
[in,out]duckTSDuck execution context.
[in]parentThe XML element containing the compatibilityDescriptor() or the compatibilityDescriptor() element itself if xml_name is null.
[in]requiredIf false, the compatibilityDescriptor element is optional.
[in]xml_nameExpected name of the XML compatibilityDescriptor() inside parent. If null, parent is the compatibilityDescriptor() element.
Returns
True on success, false on error.

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