#pragma once #include "TCHAR.h" #include "pdh.h" static PDH_HQUERY cpuQuery; static PDH_HCOUNTER cpuTotal; static ULARGE_INTEGER lastCPU, lastSysCPU, lastUserCPU; static int numProcessors; static HANDLE self; class Util { private: static bool LoadTextureFromFileDx11(const char* filename, ID3D11ShaderResourceView** out_srv); public: static void ClearCharTasksVehCheck(CPed* ped); static CPed *GetClosestPed(); static CVehicle *GetClosestVehicle(); static int GetLargestGangInZone(); static void LoadTexturesInDirRecursive(const char * path, const char * file_ext, std::vector& category_vec, std::vector> &store_vec); static void ReleaseTextures(std::vector> &store_vec); static bool IsOnCutscene(); static bool IsOnMission(); static std::string GetLocationName(CVector *pos); static void RainbowValues(int &r, int&g, int &b, float speed); static RwTexture* LoadTextureFromPngFile(fs::path path); static void GetCPUUsageInit(); static double GetCurrentCPUUsage(); };