#include #include #include #include "Watchdog.h" #include "definitions.h" /** * @brief This watchdog application uses a FIFO to check whether the OBSW is still running. * It checks whether the OBSW writes to the the FIFO regularly. */ int main() { std::cout << "Starting OBSW watchdog" << std::endl; std::error_code e; if (std::filesystem::exists(watchdog::RUNNING_FILE_NAME, e)) { std::cout << "Removing " << watchdog::RUNNING_FILE_NAME << std::endl; int result = std::remove(watchdog::RUNNING_FILE_NAME.c_str()); if (result != 0) { std::cerr << "file removal failure" << std::endl; } } try { WatchdogTask watchdogTask; int result = watchdogTask.performOperation(); if (result != 0) { return result; } } catch (const std::runtime_error& e) { std::cerr << "Run time exception " << e.what() << std::endl; return -1; } return 0; }