Class generated from inet/linklayer/ieee8021as/GptpPacket.msg:174 by opp_msgtool.
// The fields of the Follow_Up information TLV shall be as specified in Table 11-11 and in 11.4.4.3.2 through
// 11.4.4.3.9. This TLV is a standard organization extension TLV for the Follow_Up message, as specified in
// 14.3 of IEEE Std 1588-2019.
// NOTE—The Follow_Up information TLV is different from the CUMULATIVE_RATE_RATIO TLV of IEEE Std 1588-
// 2019 (see 16.10 and Table 52 of IEEE Std 1588-2019). While both TLVs carry cumulative rate offset information, the
// Follow_Up information TLV also carries information on the Grandmaster Clock time base, most recent phase change,
// and most recent frequency change. The CUMULATIVE_RATE_RATIO TLV is not used by gPTP.
class GptpFollowUpInformationTlv extends GptpTlv
{
tlvType = GPTP_FOLLOW_UP_INFORMATION_TLV;
uint16_t lengthField @bit(16) = B(GPTP_FOLLOW_UP_INFORMATION_TLV_BODYSIZE).get();
uint32_t organizationId @bit(24) = 0x0080C2;
uint32_t organizationSubType @bit(24) = 1;
double rateRatio @bit(32); // 11.4.4.3.6 The value of cumulativeScaledRateOffset is equal to (rateRatio – 1.0) / (2^41), truncated to the next smaller
// signed integer, where rateRatio is the ratio of the frequency of the Grandmaster Clock to the frequency of the
// LocalClock entity in the PTP Instance that sends the message.
uint16_t gmTimeBaseIndicator @bit(16); // The value of gmTimeBaseIndicator is the timeBaseIndicator of the ClockSource entity for the current
// Grandmaster PTP Instance (see 9.2.2.3).
clocktime_t lastGmPhaseChange @bit(96); // The value of lastGmPhaseChange is the time of the current Grandmaster Clock minus the time of the
// previous Grandmaster Clock, at the time that the current Grandmaster PTP Instance became the
// Grandmaster PTP Instance. The value is copied from the lastGmPhaseChange member of the MDSyncSend
// structure whose receipt causes the MD entity to send the Follow_Up message (see 11.2.11).
int32_t scaledLastGmFreqChange @bit(32); // The value of scaledLastGmFreqChange is the fractional frequency offset of the current Grandmaster Clock
// relative to the previous Grandmaster Clock, at the time that the current Grandmaster PTP Instance became
// the Grandmaster PTP Instance, or relative to itself prior to the last change in gmTimeBaseIndicator,
// multiplied by 241 and truncated to the next smaller signed integer. The value is obtained by multiplying the
// lastGmFreqChange member of MDSyncSend whose receipt causes the MD entity to send the Follow_Up
// message (see 11.2.11) by 241, and truncating to the next smaller signed integer.
}