#ifndef METER_DTS6619_H_
#define METER_DTS6619_H_

#include <stdint.h>
#include <stdbool.h>
#include "esp_err.h"

/**
 * @brief Inicializa o driver do medidor dts6619 (SPI, mutex, registradores).
 *
 * @return esp_err_t Retorna ESP_OK se a inicialização for bem-sucedida, caso contrário retorna um erro.
 */
esp_err_t meter_dts6619_init(void);

/**
 * @brief Inicia a tarefa de leitura de dados do medidor DTS6619.
 *
 * @return esp_err_t Retorna ESP_OK se a tarefa for iniciada com sucesso, caso contrário retorna um erro.
 */
esp_err_t meter_dts6619_start(void);

/**
 * @brief Para a tarefa de leitura e limpa os dados internos do medidor DTS6619.
 */
void meter_dts6619_stop(void);

#ifdef __cplusplus
}
#endif

#endif /* METER_DTS6619_H_ */
