21 lines
494 B
C++
21 lines
494 B
C++
// Copyright (2019-2023) Paul Scherrer Institute
|
|
|
|
#include "PreviewCounter.h"
|
|
|
|
PreviewCounter::PreviewCounter(std::chrono::microseconds in_period) : period(in_period), last_preview() {}
|
|
|
|
bool PreviewCounter::GeneratePreview() {
|
|
std::unique_lock<std::mutex> ul(m);
|
|
|
|
if (period.count() == 0)
|
|
return false;
|
|
|
|
auto now = std::chrono::system_clock::now();
|
|
|
|
if (now > last_preview + period) {
|
|
last_preview = now;
|
|
return true;
|
|
} else
|
|
return false;
|
|
}
|