X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=include%2Ffmsapp.h;fp=include%2Ffmsapp.h;h=a816d9ae8f830855c128159e0c65e0e82b12bd06;hb=dec33c63afafabf83c3039e916725cac6faef9b3;hp=0000000000000000000000000000000000000000;hpb=9b22dd53fe62e312c1647310b7ec43aa127090af;p=fms.git diff --git a/include/fmsapp.h b/include/fmsapp.h new file mode 100644 index 0000000..a816d9a --- /dev/null +++ b/include/fmsapp.h @@ -0,0 +1,33 @@ +#ifndef _fmsapp_ +#define _fmsapp_ + +#include "threadwrapper/threadedexecutor.h" + +#include + +// main FMS application class +class FMSApp:public Poco::Util::ServerApplication +{ +public: + FMSApp(); + + static void Terminate() { ((FMSApp *)&FMSApp::instance())->terminate(); } + +private: + void initialize(Poco::Util::Application &self); + void initializeLogger(); + void defineOptions(Poco::Util::OptionSet &options); + int main(const std::vector &args); + + void StartThreads(); + + void handleHelp(const std::string &name, const std::string &value); + void displayHelp(); + + bool m_displayhelp; + + ThreadedExecutor m_threads; + +}; + +#endif // _fmsapp_