//------------------------------------- System_functions.h ---------------------
#include "AL4.h"

#include <cstdlib>
#include <vector>
#pragma once
#include <string>
#ifdef MSWINDOWS
    #include <windows.h>
#endif

class System_functions
{
public: 
	static int Max_recursion_deep;
    
    static std::string Operating_system();
    
    static std::string test_command_line;
    
    static std::string get_command_line();
    
    static void set_working_dir(const std::string& Path_dir);

    static std::string get_working_dir();
    
    static std::string get_windows_dir();
    
    static std::string do_execute_program(const std::string& App, 
    	const std::string& Param, const int Redirect);
 
    static void do_start_program(const std::string& App, const std::string& Param);

    static std::string do_get_environment_var(const std::string& Name);

    static std::string start_dir();

};
