This repository has been archived on 2025-02-20. You can view files and clone it, but cannot push or open issues or pull requests.
Files
cavecomm/src/regularTaskExecution.cpp
Tina_Azure a7e1fbb5f5 Regular Task Execution:
Added to spec
Added to config
Base implementation of 2 test modules
2023-05-01 22:33:19 +02:00

46 lines
1.2 KiB
C++

#ifndef REGULAR_TASK_EXECUTION_CPP
#define REGULAR_TASK_EXECUTION_CPP
#include <iostream>
#include <chrono>
#include <thread>
#include "utilities.cpp"
using namespace std::chrono_literals;
/*
* RegularTaskExecution manager
*/
namespace RegularTaskExecution {
/*
* print test
* todo::remove
*/
void reeePrint() {
std::cout << "reeee" << std::endl;
}
/*
* print test
* todo::remove
*/
void counterPrint(size_t& counter) {
std::cout << counter << std::endl;
counter++;
}
void regularExecution(const Utilities::config& configuration) {
std::chrono::seconds seconds(configuration.regularTaskExecutionIntervalSeconds);
size_t counter = 0;
while (configuration.regularTaskExecution) {
if (configuration.regularTaskExecutionModules.at(Utilities::MODULE_NAME_REEE_PRINT))
reeePrint(); // print test todo::remove
if (configuration.regularTaskExecutionModules.at(Utilities::MODULE_NAME_REEE_PRINT))
counterPrint(counter); // print test todo::remove
std::this_thread::sleep_for(seconds);
}
}
}
#endif