MCPcopy Create free account
hub / github.com/facebook/time / sysoffFromExtendedTS

Function sysoffFromExtendedTS

phc/offset.go:48–61  ·  view source on GitHub ↗

based on sysoff_estimate from ptp4l sysoff.c

(extendedTS [3]PtpClockTime)

Source from the content-addressed store, hash-verified

46
47// based on sysoff_estimate from ptp4l sysoff.c
48func sysoffFromExtendedTS(extendedTS [3]PtpClockTime) SysoffResult {
49 t1 := time.Unix(extendedTS[0].Sec, int64(extendedTS[0].Nsec))
50 tp := time.Unix(extendedTS[1].Sec, int64(extendedTS[1].Nsec))
51 t2 := time.Unix(extendedTS[2].Sec, int64(extendedTS[2].Nsec))
52 interval := t2.Sub(t1)
53 timestamp := t1.Add(interval / 2)
54 offset := timestamp.Sub(tp)
55 return SysoffResult{
56 SysTime: timestamp,
57 PHCTime: tp,
58 Delay: interval,
59 Offset: offset,
60 }
61}
62
63// SysoffFromPrecise returns SysoffResult from *PTPSysOffsetPrecise . Code based on sysoff_precise from ptp4l sysoff.c
64func SysoffFromPrecise(pre *PTPSysOffsetPrecise) SysoffResult {

Callers 3

TestSysoffFromExtendedTSFunction · 0.85
BestSampleMethod · 0.85

Calls 2

UnixMethod · 0.80
SubMethod · 0.45

Tested by 1

TestSysoffFromExtendedTSFunction · 0.68

Used in the wild real call sites across dependent graphs

searching dependent graphs…