diff --git a/lib/include/srslte/upper/pdcp_entity_nr.h b/lib/include/srslte/upper/pdcp_entity_nr.h index 7df9387f8..b00f33b9c 100644 --- a/lib/include/srslte/upper/pdcp_entity_nr.h +++ b/lib/include/srslte/upper/pdcp_entity_nr.h @@ -109,11 +109,11 @@ private: * Timer callbacks */ // Reordering callback (t-Reordering) -class pdcp_entity_nr::reordering_callback : public timer_callback +class pdcp_entity_nr::reordering_callback { public: reordering_callback(pdcp_entity_nr* parent_) { parent = parent_; }; - virtual void timer_expired(uint32_t timer_id) final; + void operator()(uint32_t timer_id); private: pdcp_entity_nr* parent; diff --git a/lib/src/upper/pdcp_entity_nr.cc b/lib/src/upper/pdcp_entity_nr.cc index 490b067fd..247924b2f 100644 --- a/lib/src/upper/pdcp_entity_nr.cc +++ b/lib/src/upper/pdcp_entity_nr.cc @@ -55,8 +55,7 @@ void pdcp_entity_nr::init(uint32_t lcid_, pdcp_config_t cfg_) // configure timer if (static_cast(cfg.t_reordering) > 0) { - reordering_timer.set(static_cast(cfg.t_reordering), - [this](uint32_t tid) { reordering_fnc->timer_expired(tid); }); + reordering_timer.set(static_cast(cfg.t_reordering), *reordering_fnc); } // Mark entity as initialized @@ -332,7 +331,7 @@ void pdcp_entity_nr::deliver_all_consecutive_counts() } } -void pdcp_entity_nr::reordering_callback::timer_expired(uint32_t timer_id) +void pdcp_entity_nr::reordering_callback::operator()(uint32_t timer_id) { parent->log->debug("Reordering timer expired\n");