diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2015-11-08 21:26:48 +0100 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2015-11-08 21:26:48 +0100 |
commit | 05886065ea52559de5800850f728432c826f33b6 (patch) | |
tree | 1d5b8f4fdb2e12d52f1638be2ee7cba902e65650 /AlignSample.hpp | |
parent | 22eb9a40a48c24c2794b07f96729ce49697ef298 (diff) | |
download | odr-dpd-05886065ea52559de5800850f728432c826f33b6.tar.gz odr-dpd-05886065ea52559de5800850f728432c826f33b6.tar.bz2 odr-dpd-05886065ea52559de5800850f728432c826f33b6.zip |
Move definition of TX timestamp and fix bug after RX reset
Diffstat (limited to 'AlignSample.hpp')
-rw-r--r-- | AlignSample.hpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/AlignSample.hpp b/AlignSample.hpp index 78c430f..5757ff9 100644 --- a/AlignSample.hpp +++ b/AlignSample.hpp @@ -88,14 +88,24 @@ class AlignSample { private: bool align(); - double m_rx_sample_time() const { + double m_rx_sample_time(size_t offset = 0) const { return m_first_rx_sample_time + - (double)m_num_rx_samples_dropped / samplerate; + (double)(m_num_rx_samples_dropped + offset) / (double)samplerate; } - double m_tx_sample_time() const { + double m_tx_sample_time(size_t offset = 0) const { return m_first_tx_sample_time + - (double)m_num_tx_samples_dropped / samplerate; + (double)(m_num_tx_samples_dropped + offset) / (double)samplerate; + } + + void m_drop_tx_samples(size_t samples) { + m_txsamples.erase(m_txsamples.begin(), m_txsamples.begin() + samples); + m_num_tx_samples_dropped += samples; + } + + void m_drop_rx_samples(size_t samples) { + m_rxsamples.erase(m_rxsamples.begin(), m_rxsamples.begin() + samples); + m_num_rx_samples_dropped += samples; } std::mutex m_mutex; |