summaryrefslogtreecommitdiffstats
path: root/src/OutputUHD.h
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2015-06-12 09:40:37 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2015-06-12 09:40:37 +0200
commit058809e6678a22e0448d5de718cb6d4864bb9cb5 (patch)
tree12bf852c8b856744b671c22d876f86a7302db7d4 /src/OutputUHD.h
parentfed9a724ca91417e84071255890ec26ff797fd4f (diff)
downloaddabmod-058809e6678a22e0448d5de718cb6d4864bb9cb5.tar.gz
dabmod-058809e6678a22e0448d5de718cb6d4864bb9cb5.tar.bz2
dabmod-058809e6678a22e0448d5de718cb6d4864bb9cb5.zip
Cleanup OutputUHD structure
Diffstat (limited to 'src/OutputUHD.h')
-rw-r--r--src/OutputUHD.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/OutputUHD.h b/src/OutputUHD.h
index bf5b27d..49489e3 100644
--- a/src/OutputUHD.h
+++ b/src/OutputUHD.h
@@ -160,9 +160,35 @@ class UHDWorker {
}
private:
+ // Asynchronous message statistics
+ int num_underflows;
+ int num_late_packets;
+
+ bool fct_discontinuity;
+ int expected_next_fct;
+ uhd::tx_metadata_t md;
+ time_t tx_second;
+ double pps_offset;
+ double last_pps;
+
+ // GPS Fix check variables
+ double last_gps_fix_check;
+ int num_checks_without_gps_fix;
+ boost::packaged_task<bool> gps_fix_pt;
+ boost::unique_future<bool> gps_fix_future;
+ boost::thread gps_fix_task;
+
+
+ // Transmit timeout
+ static const double tx_timeout = 20.0;
+
void process();
void process_errhandler();
+ void print_async_metadata(const struct UHDWorkerFrameData *frame);
+
+ void handle_frame(const struct UHDWorkerFrameData *frame);
+ void tx_frame(const struct UHDWorkerFrameData *frame);
struct UHDWorkerData *uwd;
boost::thread uhd_thread;