#include "textos.hpp" #include "ui.hpp" #include #include #ifdef _WIN32 #include #else #include #endif #ifndef CPU_MON_HPP_ #define CPU_MON_HPP_ const int NUM_ESTADOS_CPU = 10; enum EstadosCPU { S_USER = 0, S_NICE, S_SYSTEM, S_IDLE, S_IOWAIT, S_IRQ, S_SOFTIRQ, S_STEAL, S_GUEST, S_GUEST_NICE }; typedef struct DatosCPU { std::string cpu; size_t tiempos[NUM_ESTADOS_CPU]; } DatosCPU; class CpuMon { private: uint8_t num_hilos; uint8_t num_sectores; int columnas; WINDOW *ventanaMonitorCPU; static void esperar(int segundos); bool enFuncionamiento; public: CpuMon(uint8_t num_hilos, WINDOW *ventanaMonitorCPU, int lineas); void iniciarCPU_MON(); void pararCPU_MON(); size_t getTiempoInactivo(const DatosCPU &e); size_t getTiempoActivo(const DatosCPU &e); void leerEstadoCPU(std::vector &entradas); void obtenerUsoCPU(const std::vector &entradas1, const std::vector &entradas2); std::string obtenerBarra(float *porcentaje, std::string cpu); void setNum_sectores(uint8_t num_sectores); }; #endif // CPU_MON_HPP_