#include <softwarePLL.h>
Public Member Functions | |
| double | AllowedTimeDeviation () const |
| void | AllowedTimeDeviation (double val) |
| double | extraPolateRelativeTimeStamp (uint32_t tick) |
| uint32_t | ExtrapolationDivergenceCounter () const |
| void | ExtrapolationDivergenceCounter (uint32_t val) |
| int | findDiffInFifo (double diff, double tol) |
| uint64_t | FirstTick () const |
| void | FirstTick (uint64_t val) |
| double | FirstTimeStamp () const |
| void | FirstTimeStamp (double val) |
| bool | getCorrectedTimeStamp (uint32_t &sec, uint32_t &nanoSec, uint32_t tick) |
| bool | getDemoFileData (std::string fileName, std::vector< uint32_t > &tickVec, std::vector< uint32_t > &secVec, std::vector< uint32_t > &nanoSecVec) |
| double | InterpolationSlope () const |
| void | InterpolationSlope (double val) |
| bool | IsInitialized () const |
| void | IsInitialized (bool val) |
| bool | pushIntoFifo (double curTimeStamp, uint32_t curtick) |
| bool | updatePLL (uint32_t sec, uint32_t nanoSec, uint32_t curtick) |
| Updates PLL internale State should be called only with network send timestamps. | |
| ~SoftwarePLL () | |
Static Public Member Functions | |
| static SoftwarePLL & | instance () |
| static void | testbed () |
Private Member Functions | |
| bool | nearSameTimeStamp (double relTimeStamp1, double relTimeStamp2) |
| SoftwarePLL & | operator= (const SoftwarePLL &) |
| SoftwarePLL () | |
| SoftwarePLL (const SoftwarePLL &) | |
| bool | updateInterpolationSlope () |
Private Attributes | |
| double | allowedTimeDeviation |
| double | clockFifo [fifoSize] |
| double | dClockDiffFeedBack |
| double | dTAvgFeedback |
| uint32_t | extrapolationDivergenceCounter |
| uint64_t | firstTick |
| double | firstTimeStamp |
| double | interpolationSlope |
| bool | isInitialized |
| uint32_t | lastValidTick |
| double | lastValidTimeStamp |
| uint32_t | mostRecentNanoSec |
| uint32_t | mostRecentSec |
| double | mostRecentTimeStamp |
| int | numberValInFifo |
| uint32_t | tickFifo [fifoSize] |
Static Private Attributes | |
| static const int | fifoSize = 7 |
| static const double | MaxAllowedTimeDeviation = 0.001 |
| static const uint32_t | MaxExtrapolationCounter = 5 |
Definition at line 20 of file softwarePLL.h.
| SoftwarePLL::~SoftwarePLL | ( | ) | [inline] |
Definition at line 28 of file softwarePLL.h.
| SoftwarePLL::SoftwarePLL | ( | ) | [inline, private] |
Definition at line 72 of file softwarePLL.h.
| SoftwarePLL::SoftwarePLL | ( | const SoftwarePLL & | ) | [private] |
| double SoftwarePLL::AllowedTimeDeviation | ( | ) | const [inline] |
Definition at line 43 of file softwarePLL.h.
| void SoftwarePLL::AllowedTimeDeviation | ( | double | val | ) | [inline] |
Definition at line 44 of file softwarePLL.h.
| double SoftwarePLL::extraPolateRelativeTimeStamp | ( | uint32_t | tick | ) |
Definition at line 89 of file softwarePLL.cpp.
| uint32_t SoftwarePLL::ExtrapolationDivergenceCounter | ( | ) | const [inline] |
Definition at line 45 of file softwarePLL.h.
| void SoftwarePLL::ExtrapolationDivergenceCounter | ( | uint32_t | val | ) | [inline] |
Definition at line 46 of file softwarePLL.h.
| int SoftwarePLL::findDiffInFifo | ( | double | diff, |
| double | tol | ||
| ) |
Definition at line 98 of file softwarePLL.cpp.
| uint64_t SoftwarePLL::FirstTick | ( | ) | const [inline] |
Definition at line 37 of file softwarePLL.h.
| void SoftwarePLL::FirstTick | ( | uint64_t | val | ) | [inline] |
Definition at line 38 of file softwarePLL.h.
| double SoftwarePLL::FirstTimeStamp | ( | ) | const [inline] |
Definition at line 39 of file softwarePLL.h.
| void SoftwarePLL::FirstTimeStamp | ( | double | val | ) | [inline] |
Definition at line 40 of file softwarePLL.h.
| bool SoftwarePLL::getCorrectedTimeStamp | ( | uint32_t & | sec, |
| uint32_t & | nanoSec, | ||
| uint32_t | tick | ||
| ) |
Definition at line 172 of file softwarePLL.cpp.
| bool SoftwarePLL::getDemoFileData | ( | std::string | fileName, |
| std::vector< uint32_t > & | tickVec, | ||
| std::vector< uint32_t > & | secVec, | ||
| std::vector< uint32_t > & | nanoSecVec | ||
| ) |
| static SoftwarePLL& SoftwarePLL::instance | ( | ) | [inline, static] |
Definition at line 23 of file softwarePLL.h.
| double SoftwarePLL::InterpolationSlope | ( | ) | const [inline] |
Definition at line 41 of file softwarePLL.h.
| void SoftwarePLL::InterpolationSlope | ( | double | val | ) | [inline] |
Definition at line 42 of file softwarePLL.h.
| bool SoftwarePLL::IsInitialized | ( | ) | const [inline] |
Definition at line 35 of file softwarePLL.h.
| void SoftwarePLL::IsInitialized | ( | bool | val | ) | [inline] |
Definition at line 36 of file softwarePLL.h.
| bool SoftwarePLL::nearSameTimeStamp | ( | double | relTimeStamp1, |
| double | relTimeStamp2 | ||
| ) | [private] |
Definition at line 187 of file softwarePLL.cpp.
| SoftwarePLL& SoftwarePLL::operator= | ( | const SoftwarePLL & | ) | [private] |
| bool SoftwarePLL::pushIntoFifo | ( | double | curTimeStamp, |
| uint32_t | curtick | ||
| ) |
Definition at line 68 of file softwarePLL.cpp.
| void SoftwarePLL::testbed | ( | ) | [static] |
Definition at line 296 of file softwarePLL.cpp.
| bool SoftwarePLL::updateInterpolationSlope | ( | ) | [private] |
Definition at line 200 of file softwarePLL.cpp.
| bool SoftwarePLL::updatePLL | ( | uint32_t | sec, |
| uint32_t | nanoSec, | ||
| uint32_t | curtick | ||
| ) |
Updates PLL internale State should be called only with network send timestamps.
| sec,: | System Timetamp from received network packed |
| nsec,: | System Timestamp from received network packed |
| curtick | micro Seconds since scanner start from SOPAS Datagram |
Definition at line 124 of file softwarePLL.cpp.
double SoftwarePLL::allowedTimeDeviation [private] |
Definition at line 63 of file softwarePLL.h.
double SoftwarePLL::clockFifo[fifoSize] [private] |
Definition at line 56 of file softwarePLL.h.
double SoftwarePLL::dClockDiffFeedBack [private] |
Definition at line 61 of file softwarePLL.h.
double SoftwarePLL::dTAvgFeedback [private] |
Definition at line 60 of file softwarePLL.h.
uint32_t SoftwarePLL::extrapolationDivergenceCounter [private] |
Definition at line 71 of file softwarePLL.h.
const int SoftwarePLL::fifoSize = 7 [static, private] |
Definition at line 52 of file softwarePLL.h.
uint64_t SoftwarePLL::firstTick [private] |
Definition at line 64 of file softwarePLL.h.
double SoftwarePLL::firstTimeStamp [private] |
Definition at line 62 of file softwarePLL.h.
double SoftwarePLL::interpolationSlope [private] |
Definition at line 68 of file softwarePLL.h.
bool SoftwarePLL::isInitialized [private] |
Definition at line 59 of file softwarePLL.h.
uint32_t SoftwarePLL::lastValidTick [private] |
Definition at line 58 of file softwarePLL.h.
double SoftwarePLL::lastValidTimeStamp [private] |
Definition at line 57 of file softwarePLL.h.
const double SoftwarePLL::MaxAllowedTimeDeviation = 0.001 [static, private] |
Definition at line 53 of file softwarePLL.h.
const uint32_t SoftwarePLL::MaxExtrapolationCounter = 5 [static, private] |
Definition at line 54 of file softwarePLL.h.
uint32_t SoftwarePLL::mostRecentNanoSec [private] |
Definition at line 66 of file softwarePLL.h.
uint32_t SoftwarePLL::mostRecentSec [private] |
Definition at line 65 of file softwarePLL.h.
double SoftwarePLL::mostRecentTimeStamp [private] |
Definition at line 67 of file softwarePLL.h.
int SoftwarePLL::numberValInFifo [private] |
Definition at line 51 of file softwarePLL.h.
uint32_t SoftwarePLL::tickFifo[fifoSize] [private] |
Definition at line 55 of file softwarePLL.h.