template <typename T>
TSLQueue<T>::TSLQueue() :
- head(std::make_shared<TSLQNode>()),
- tail(std::make_shared<TSLQNode>()),
+ head(std::shared_ptr<TSLQNode>(new TSLQNode())),
+ tail(std::shared_ptr<TSLQNode>(new TSLQNode())),
msize(0)
{
head->next = tail;
template <typename T>
void TSLQueue<T>::push(const T &data) {
std::lock_guard<std::mutex> lock(mutex);
- auto newNode = std::make_shared<TSLQNode>();
- newNode->data = std::make_unique<T>(data);
+ auto newNode = std::shared_ptr<TSLQNode>(new TSLQNode());
+ newNode->data = std::unique_ptr<T>(new T(data));
auto last = tail->prev.lock();
assert(last);
template <typename T>
bool TSLQueue<T>::push_nb(const T &data) {
if(mutex.try_lock()) {
- auto newNode = std::make_shared<TSLQNode>();
- newNode->data = std::make_unique<T>(data);
+ auto newNode = std::shared_ptr<TSLQNode>(new TSLQNode());
+ newNode->data = std::unique_ptr<T>(new T(data));
auto last = tail->prev.lock();
assert(last);
float UDPC::durationToFSec(const std::chrono::steady_clock::duration& duration) {
return (float)duration.count()
- * (float)std::decay_t<decltype(duration)>::period::num
- / (float)std::decay_t<decltype(duration)>::period::den;
+ * (float)std::chrono::steady_clock::duration::period::num
+ / (float)std::chrono::steady_clock::duration::period::den;
}
uint16_t UDPC::durationToMS(const std::chrono::steady_clock::duration& duration) {