#include "InitMission.h"
#include "OBSWVersion.h"

#include "fsfw/FSFWVersion.h"
#include "fsfw/tasks/TaskFactory.h"

#include <iostream>
#ifdef WIN32
static const char* COMPILE_PRINTOUT = "Windows";
#elif LINUX
static const char* COMPILE_PRINTOUT = "Linux";
#else
static const char* COMPILE_PRINTOUT = "unknown OS";
#endif
/**
 * @brief 	This is the main program for the hosted build. It can be run for
 * 			Linux and Windows.
 * @return
 */
int main(void)
{
    std::cout << "-- EIVE OBSW --" << std::endl;
    std::cout << "-- Compiled for " << COMPILE_PRINTOUT <<  " --" << std::endl;
    std::cout << "-- OBSW " << SW_NAME << " v" << SW_VERSION << "." << SW_SUBVERSION <<
            "." << SW_REVISION << ", FSFW v" << FSFW_VERSION << "." << FSFW_SUBVERSION << "." <<
            FSFW_REVISION << "--"  << std::endl;
    std::cout << "-- " <<  __DATE__ << " " << __TIME__ << " --" << std::endl;

	initmission::initMission();

	for(;;) {
		// suspend main thread by sleeping it.
		TaskFactory::delayTask(5000);
	}
}