#ifndef SUB_FUNCTIONS_H
#define SUB_FUNCTIONS_H

#include "sysfs_gpio.h"
#include "led_operation.h"

void clean_screen(tm1640_gpio *gpio_handler);
void change_state_to_standby(tm1640_gpio *gpio_handler);
void change_state_to_charging(tm1640_gpio *gpio_handler);
void change_state_to_discharging(tm1640_gpio *gpio_handler);

void turn_outside_circle_on(tm1640_gpio *gpio_handler);
void turn_outside_circle_off(tm1640_gpio *gpio_handler);
void set_soc_circle(tm1640_gpio *gpio_handler, int soc_val);
void clean_soc_circle(tm1640_gpio *gpio_handler);
void set_soc_value(tm1640_gpio *gpio_handler, int soc);
void turn_percent_on(tm1640_gpio *gpio_handler);
void turn_percent_off(tm1640_gpio *gpio_handler);

void turn_wifi_on(tm1640_gpio *gpio_handler);
void turn_wifi_off(tm1640_gpio *gpio_handler);
void turn_sun_on(tm1640_gpio *gpio_handler);
void turn_sun_off(tm1640_gpio *gpio_handler);
void turn_exclamatory_on(tm1640_gpio *gpio_handler);
void turn_exclamatory_off(tm1640_gpio *gpio_handler);
void set_warning_level(tm1640_gpio *gpio_handler, int level_val);
void clean_warning_level(tm1640_gpio *gpio_handler);
void clear_alarm(tm1640_gpio *gpio_handler);

#endif