29using std::chrono::duration_cast;
30using std::chrono::milliseconds;
31using std::chrono::system_clock;
43 const std::vector<std::string> ext = {
".json",
".root",
".eve"};
49 const auto millisec_since_epoch = duration_cast<milliseconds>(system_clock::now().time_since_epoch()).count();
51 char hostname[_POSIX_HOST_NAME_MAX];
52 gethostname(hostname, _POSIX_HOST_NAME_MAX);
54 const auto pid = getpid();
55 const auto result = fmt::format(fmt::runtime(this->mName),
56 fmt::arg(
"hostname", hostname),
58 fmt::arg(
"timestamp", millisec_since_epoch),
59 fmt::arg(
"ext", this->mExt));
60 return this->mPath +
"/" +
result;
Loading content of the Folder and returning sorted.
static void reduceNumberOfFiles(const std::string &path, const std::deque< std::string > &files, std::size_t filesInFolder)
static std::deque< std::string > load(const std::string &path, const std::string &marker, const std::vector< std::string > &ext)
void reduceNumberOfFiles(size_t filesInFolder) const
std::string newFileName() const
FileProducer(const std::string &path, const std::string &ext, const std::string &name="tracks_{timestamp}_{hostname}_{pid}{ext}")
GLuint const GLchar * name
GLsizei const GLchar *const * path
void createDirectoriesIfAbsent(std::string const &path)