TSDuck v3.40-4105
MPEG Transport Stream Toolkit
|
Representation of a time assocition between NCR and UTC. More...
#include <tsSAT.h>
Public Member Functions | |
time_association_info_type ()=default | |
Default constructor. | |
time_association_info_type (PSIBuffer &buf) | |
Read-in constructor. | |
void | clear () |
Clear values. | |
virtual void | deserialize (PSIBuffer &buf) override |
This method deserializes (populates) the attributes of a geostationary satellite. | |
virtual bool | fromXML (const xml::Element *element) override |
This method populates this object from XML attributes and sub-element. | |
virtual void | serialize (PSIBuffer &buf) const override |
This method serializes the attributes of a geostationary satellite. | |
virtual void | toXML (xml::Element *root) override |
This method converts this object to XML by populating necessary attributes and sub-elements into the provided element. | |
Public Attributes | |
uint32_t | association_timestamp_nanoseconds = 0 |
The number of nanoseconds of the association timestamp on top of the association_timestamp_seconds since January 1st, 1970 00:00 : 00. | |
uint64_t | association_timestamp_seconds = 0 |
The number of seconds of the association_timestamp since January 1st, 1970 00:00:00. | |
uint8_t | association_type = 0 |
4 bits. Indicates how the association_timestamp is to be interpreted (valid: 0 or 1). | |
bool | leap59 = false |
Set to '1' to announce that a leap second will be skipped at the end of the quarter of the year to which the association timestamp belongs.Otherwise, this field shall be set to '0'. | |
bool | leap61 = false |
Set to '1' to announce that a leap second will be added at the end of the quarter of a year to which the association timestamp belongs. | |
NCR_type | ncr {} |
NCR time as specified in ETSI EN 301 790 and ISO/IEC 13818-1. | |
bool | past_leap59 = false |
Set to '1' to announce that a leap second was skipped at the end of the quarter of a year previous to the quarter to which the association timestamp belongs. | |
bool | past_leap61 = false |
Set to '1' to announce that a leap second is currently being added, when the association timestamp refers to the last second in a quarter of a year. | |
Representation of a time assocition between NCR and UTC.
|
inline |
Read-in constructor.
[in,out] | buf | Deserialization buffer. Read the descriptor payload from buf. The end of read is the end of the binary payload. If any kind of error is reported in the buffer or if the payload is not completely read, the deserialization is considered as invalid. |
|
overridevirtual |
This method populates this object from XML attributes and sub-element.
[in] | element | The element whose attributes and sub-elements are parsed to construct this object |
Implements ts::SAT::SAT_base.
|
overridevirtual |
This method converts this object to XML by populating necessary attributes and sub-elements into the provided element.
[in,out] | root | The element whose attributes and sub-elements are added to to represent values in this object |
Implements ts::SAT::SAT_base.
|
overridevirtual |
This method serializes the attributes of a geostationary satellite.
[in,out] | buf | A PSIBuffer with the appropriate size for the section payload. |
Implements ts::SAT::SAT_base.
|
overridevirtual |
This method deserializes (populates) the attributes of a geostationary satellite.
[in,out] | buf | Deserialization buffer. Read the descriptor payload from buf. The end of read is the end of the binary payload. If any kind of error is reported in the buffer or if the payload is not completely read, the deserialization is considered as invalid. |
Implements ts::SAT::SAT_base.
NCR_type ts::SAT::time_association_info_type::ncr {} |
NCR time as specified in ETSI EN 301 790 and ISO/IEC 13818-1.
The NCR time is associated with the association_timestamp. The NCR time used in the association shall be between 648 000 000 (2 hours) in the past and 7 776 000 000 (24 hours) in the future. Typically, it will be very close to the current NCR.
uint32_t ts::SAT::time_association_info_type::association_timestamp_nanoseconds = 0 |
The number of nanoseconds of the association timestamp on top of the association_timestamp_seconds since January 1st, 1970 00:00 : 00.
(maximum : 1 000 000 000).
bool ts::SAT::time_association_info_type::leap61 = false |
Set to '1' to announce that a leap second will be added at the end of the quarter of a year to which the association timestamp belongs.
In case that the association timestamp refers to a time within such an added leap second, and the leap second is already added to the association timestamp, then this flag shall be set to '0'. In all other cases this field shall be set to '0'.
bool ts::SAT::time_association_info_type::past_leap59 = false |
Set to '1' to announce that a leap second was skipped at the end of the quarter of a year previous to the quarter to which the association timestamp belongs.
Otherwise, this field shall be set to '0'.
bool ts::SAT::time_association_info_type::past_leap61 = false |
Set to '1' to announce that a leap second is currently being added, when the association timestamp refers to the last second in a quarter of a year.
This field may also be set to '1' to announce that a leap second was added at the end of the quarter of a year previous to the quarter to which the association timestamp belongs except when it belongs to the last second in that quarter. Otherwise, this field shall be set to '0'.