diff options
author | 2019-04-02 17:00:38 +0000 | |
---|---|---|
committer | 2019-04-02 17:00:38 +0000 | |
commit | 08c9da8bd51800cb8c77f2df4cf5576f69e983b6 (patch) | |
tree | ce8598add7ce82a15b07f6335c0d96d454ea9ed3 /libtransport/src/hicn/transport/interfaces/rtc_socket_producer.h | |
parent | 810653602028dac886040b7a0974bd22f604142b (diff) | |
parent | c99eeb5ff63ba5081087272c9c3f77e887f920dd (diff) |
Merge "[HICN-94] Handle nacks when the producer socket is not active"
Diffstat (limited to 'libtransport/src/hicn/transport/interfaces/rtc_socket_producer.h')
-rw-r--r-- | libtransport/src/hicn/transport/interfaces/rtc_socket_producer.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/libtransport/src/hicn/transport/interfaces/rtc_socket_producer.h b/libtransport/src/hicn/transport/interfaces/rtc_socket_producer.h index bc54be4bb..cb09ef991 100644 --- a/libtransport/src/hicn/transport/interfaces/rtc_socket_producer.h +++ b/libtransport/src/hicn/transport/interfaces/rtc_socket_producer.h @@ -18,6 +18,7 @@ #include <hicn/transport/interfaces/socket_producer.h> #include <hicn/transport/utils/content_store.h> +#include <atomic> #include <map> #include <mutex> @@ -41,7 +42,7 @@ class RTCProducerSocket : public ProducerSocket { private: void sendNack(const Interest &interest); - void updateStats(uint32_t packet_size); + void updateStats(uint32_t packet_size, uint64_t now); // std::map<uint32_t, uint64_t> pendingInterests_; uint32_t currentSeg_; @@ -53,9 +54,12 @@ class RTCProducerSocket : public ProducerSocket { uint32_t producedBytes_; uint32_t producedPackets_; uint32_t bytesProductionRate_; - uint32_t packetsProductionRate_; + std::atomic<uint32_t> packetsProductionRate_; uint32_t perSecondFactor_; - std::chrono::steady_clock::time_point lastStats_; + uint64_t lastStats_; + // std::chrono::steady_clock::time_point lastProduced_; + std::atomic<uint64_t> lastProduced_; + std::atomic<bool> active_; }; } // namespace interface |