Go to the documentation of this file.
5 #pragma warning(disable : 4996)
60 bool UpdatePLL(uint32_t sec, uint32_t nanoSec, uint32_t curtick);
156 bool PushIntoFifo(
double curTimeStamp, uint32_t curtick);
class SoftwarePLL implements synchronisation between ticks and timestamp. See https://github....
double AllowedTimeDeviation() const
Returns the max. allowed time difference between estimated and measured timestamp time in seconds.
bool NearSameTimeStamp(double relTimeStamp1, double relTimeStamp2)
uint64_t FirstTick() const
Returns the first sensor tick in the fifo buffer.
double ExtraPolateRelativeTimeStamp(uint32_t tick)
Extrapolates and returns the measurement timestamp in seconds relative to FirstTimeStamp....
void AllowedTimeDeviation(double val)
Set the max. allowed time difference between estimated and measured receive timestamp in seconds.
bool GetCorrectedTimeStamp(uint32_t &sec, uint32_t &nanoSec, uint32_t tick)
Computes the timestamp of a measurement from sensor ticks.
bool PushIntoFifo(double curTimeStamp, uint32_t curtick)
Pushes measurement timestamp and sensor ticks to the fifo, updates tick fifo and clock (timestamp) fi...
void InterpolationSlope(double val)
Sets the interpolated slope (gradient of the regression line)
void ExtrapolationDivergenceCounter(uint32_t val)
Sets the counter of extrapolated divergences (number of times the estimated and measured receive time...
SoftwarePLL & operator=(const SoftwarePLL &)
void FirstTimeStamp(double val)
Sets the first timestamp in the fifo buffer in seconds.
uint32_t ExtrapolationDivergenceCounter() const
Returns the counter of extrapolated divergences (number of times the estimated and measured receive t...
std::vector< uint32_t > TickFifo_
double AllowedTimeDeviation_
bool UpdateInterpolationSlope()
bool UpdatePLL(uint32_t sec, uint32_t nanoSec, uint32_t curtick)
Updates PLL internale State should be called only with network send timestamps.
double FirstTimeStamp() const
Returns the first timestamp in the fifo buffer in seconds.
static const uint32_t MaxExtrapolationCounter_
void FirstTick(uint64_t val)
Sets the first sensor tick in the fifo buffer.
bool IsInitialized() const
Returns the initialization status, i.e. true, if SoftwarePLL is initialized, or false otherwise (inco...
uint32_t ExtrapolationDivergenceCounter_
double InterpolationSlope_
static std::map< std::string, SoftwarePLL * > _instances
std::vector< double > ClockFifo_
void IsInitialized(bool val)
Sets the initialization status, i.e. true, if SoftwarePLL is initialized, or false otherwise (inconsi...
double InterpolationSlope() const
Returns the interpolated slope (gradient of the regression line)
static SoftwarePLL & Instance(const std::string &id="", int fifo_length=7)
Creates an instance of SoftwarePLL or returns an existing one, given its id.
static const double MaxAllowedTimeDeviation_
SoftwarePLL(int fifo_length=7)
sick_scan
Author(s): Michael Lehning
, Jochen Sprickerhof , Martin Günther
autogenerated on Thu Sep 8 2022 02:30:19