OSDN Git Service

Removed perfcounter_read() and perfcounter_freq() functions, since we can use QElapse...
[mutilities/MUtilities.git] / include / MUtils / OSSupport.h
index 3fce410..fd66c1f 100644 (file)
@@ -100,19 +100,61 @@ namespace MUtils
                MUTILS_API void system_message_wrn(const wchar_t *const title, const wchar_t *const text);
                MUTILS_API void system_message_err(const wchar_t *const title, const wchar_t *const text);
 
+               //CLI Arguments
+               MUTILS_API const QStringList &arguments(void);
+
                //Get the OS version
                MUTILS_API const Version::os_version_t &os_version(void);
                MUTILS_API const char *os_friendly_name(const MUtils::OS::Version::os_version_t &os_version);
+               MUTILS_API const bool &running_on_wine(void);
 
                //Get known Folder
                MUTILS_API const QString &known_folder(known_folder_t folder_id);
 
-               //Current Date
+               //Current Date & Time
                MUTILS_API QDate current_date(void);
+               MUTILS_API quint64 current_file_time(void);
+
+               //Check for process elevation
+               MUTILS_API bool is_elevated(bool *bIsUacEnabled = NULL);
+               MUTILS_API bool user_is_admin(void);
 
                //Network Status
                MUTILS_API int network_status(void);
 
+               //Message handler
+               MUTILS_API bool handle_os_message(const void *const message, long *result);
+
+               //Sleep
+               MUTILS_API void sleep_ms(const size_t &duration);
+
+               //Is executable file?
+               MUTILS_API bool is_executable_file(const QString &path);
+
+               //Shutdown & Hibernation
+               MUTILS_API bool is_hibernation_supported(void);
+               MUTILS_API bool shutdown_computer(const QString &message, const unsigned long timeout, const bool forceShutdown, const bool hibernate);
+
+               //Free diskspace
+               MUTILS_API bool free_diskspace(const QString &path, quint64 &freeSpace);
+
+               //Shell open
+               MUTILS_API bool shell_open(const QWidget *parent, const QString &url, const bool explore = false);
+               MUTILS_API bool shell_open(const QWidget *parent, const QString &url, const QString &parameters, const QString &directory, const bool explore = false);
+
+               //Open media file
+               MUTILS_API bool open_media_file(const QString &mediaFilePath);
+
+               //Process priority
+               MUTILS_API bool change_process_priority(const int priority);
+               MUTILS_API bool change_process_priority(const QProcess *proc, const int priority);
+
+               //Process ID
+               MUTILS_API quint32 process_id(const QProcess *proc);
+
+               //Check if debugger is present
+               MUTILS_API void check_debugger(void);
+
                //Error handling
                MUTILS_API void fatal_exit(const wchar_t* const errorMessage);
        }