snapcast/client/timeProvider.h
(no author) 831f07a657 ogg rate, 32bit rate
git-svn-id: svn://elaine/murooma/trunk@288 d8a302eb-03bc-478d-80e4-98257eca68ef
2014-09-21 19:52:40 +00:00

33 lines
577 B
C++

#ifndef TIME_PROVIDER_H
#define TIME_PROVIDER_H
#include <atomic>
#include "doubleBuffer.h"
class TimeProvider
{
public:
static TimeProvider& getInstance()
{
static TimeProvider instance;
return instance;
}
void setDiffToServer(double ms);
long getDiffToServer();
long getPercentileDiffToServer(size_t percentile);
long getDiffToServerMs();
private:
TimeProvider();
TimeProvider(TimeProvider const&); // Don't Implement
void operator=(TimeProvider const&); // Don't implement
DoubleBuffer<long> diffBuffer;
std::atomic<long> diffToServer;
};
#endif