sourcestats: add function to correct accumulated offsets
This will be needed to follow server time corrections in order to better estimate frequency.
This commit is contained in:
parent
0bf39c0ab9
commit
72f7d09f58
2 changed files with 20 additions and 0 deletions
|
@ -779,6 +779,22 @@ SST_SlewSamples(SST_Stats inst, struct timespec *when, double dfreq, double doff
|
||||||
|
|
||||||
/* ================================================== */
|
/* ================================================== */
|
||||||
|
|
||||||
|
void
|
||||||
|
SST_CorrectOffset(SST_Stats inst, double doffset)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
if (!inst->n_samples)
|
||||||
|
return;
|
||||||
|
|
||||||
|
for (i = -inst->runs_samples; i < inst->n_samples; i++)
|
||||||
|
inst->offsets[get_runsbuf_index(inst, i)] += doffset;
|
||||||
|
|
||||||
|
inst->estimated_offset += doffset;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ================================================== */
|
||||||
|
|
||||||
void
|
void
|
||||||
SST_AddDispersion(SST_Stats inst, double dispersion)
|
SST_AddDispersion(SST_Stats inst, double dispersion)
|
||||||
{
|
{
|
||||||
|
|
|
@ -102,6 +102,10 @@ SST_GetTrackingData(SST_Stats inst, struct timespec *ref_time,
|
||||||
|
|
||||||
extern void SST_SlewSamples(SST_Stats inst, struct timespec *when, double dfreq, double doffset);
|
extern void SST_SlewSamples(SST_Stats inst, struct timespec *when, double dfreq, double doffset);
|
||||||
|
|
||||||
|
/* This routine corrects already accumulated samples to improve the
|
||||||
|
frequency estimate when a new sample is accumulated */
|
||||||
|
extern void SST_CorrectOffset(SST_Stats inst, double doffset);
|
||||||
|
|
||||||
/* This routine is called when an indeterminate offset is introduced
|
/* This routine is called when an indeterminate offset is introduced
|
||||||
into the local time. */
|
into the local time. */
|
||||||
extern void SST_AddDispersion(SST_Stats inst, double dispersion);
|
extern void SST_AddDispersion(SST_Stats inst, double dispersion);
|
||||||
|
|
Loading…
Reference in a new issue