1
0
Fork 0
skibidifetch/src/stats.h
Ari Archer e95064d450
init
Signed-off-by: Ari Archer <ari@ari.lt>
2024-05-04 00:45:20 +03:00

48 lines
1 KiB
C

#ifndef _STATS_H
#define _STATS_H
#include <stdint.h>
#include <sys/utsname.h>
#include <sys/utsname.h>
typedef struct {
uint64_t total;
uint64_t used;
} Memory;
typedef struct {
char model[64];
uint8_t core_count;
double freq;
} CPU;
typedef struct {
char *name;
struct utsname uts;
struct passwd *pw;
uint64_t pkg_count;
char *term;
char *shell;
uint64_t uptime;
const char *logo;
Memory memory;
CPU cpu;
} OsInfo;
char *stat_get_name(void);
char *stat_get_username(void);
char *stat_get_shell(void);
uint64_t stat_get_uptime(void);
uint64_t stat_get_package_count(void);
double stat_get_cpu_freq(const uint8_t core_count);
unsigned char Memory_init(Memory *memory);
unsigned char CPU_init(CPU *cpu);
unsigned char OsInfo_init(OsInfo *os);
unsigned char OsInfo_update(OsInfo *os);
void OsInfo_delete(OsInfo *os);
void stats_print_beside(const OsInfo *os,
const uint64_t art_line,
const uint16_t cur_frame);
#endif /* _STATS_H */