#pragma once class CoreInstance; namespace System { /** * @throws std::exception if the operation finished with failed * @return count CPU */ int getCountCPU(); unsigned long long getMemorySize(); /** * Load module and init handler * @throws std::runtime_error if module not found * @return module handler */ void* InitModule(const char* ModuleName, CoreInstance& core); /** * Start module * @throws std::runtime_error if module not contains StartModule function */ void StartModule(void* handler) noexcept(false); /* * Stop the module when unload there * @throws std::runtime_error if module not contains StopModule function */ void StopModule(void* handler) noexcept(false); /** * Call stop module * @throws std::runtime_error if module not contains QuitModule function */ void QuitModule(void* handler) noexcept(false); }