
#ifndef __WFX_LANG_WFXCLIAPPLICATION_H__
#define __WFX_LANG_WFXCLIAPPLICATION_H__

#include <WFX/WFXIncludes.h>
#include <WFX/lang/WFXSystem.h>
#include <WFX/lang/WFXApplication.h>

namespace WFX {

    namespace lang {
        
        /**
         * WFXApplication class
         */
        class WFXCLIApplication : public WFX::lang::WFXApplication {
            public:
                /**
                 * CTor
                 * passes the given arguments to the SettingsManager and saves
                 * the command line parameters
                 */
                WFXCLIApplication(int argc, char *argv[]);
                WFXCLIApplication();
                
                virtual ~WFXCLIApplication();

            protected:

                /** starts the Application */
                void run();

                /** exits the program */
                void exit();
                
            private:
                /**
                 * private method called by constructors
                 */
                void init();
        };

    }
    
}

#endif //include guard

