#pragma once #include "esp_err.h" #include #include #ifdef CONFIG_MIMI_TOOL_GPIO esp_err_t tool_gpio_init(void); esp_err_t tool_gpio_write_execute(const char *input_json, char *output, size_t output_size); esp_err_t tool_gpio_read_execute(const char *input_json, char *output, size_t output_size); esp_err_t tool_gpio_read_all_execute(const char *input_json, char *output, size_t output_size); #else static inline esp_err_t tool_gpio_init(void) { return ESP_OK; } static inline esp_err_t tool_gpio_write_execute(const char *input_json, char *output, size_t output_size) { (void)input_json; (void)output; (void)output_size; if (output && output_size > 0) { snprintf(output, output_size, "Error: GPIO tool is disabled in this build."); } return ESP_OK; } static inline esp_err_t tool_gpio_read_execute(const char *input_json, char *output, size_t output_size) { (void)input_json; (void)output; (void)output_size; if (output && output_size > 0) { snprintf(output, output_size, "Error: GPIO tool is disabled in this build."); } return ESP_OK; } static inline esp_err_t tool_gpio_read_all_execute(const char *input_json, char *output, size_t output_size) { (void)input_json; (void)output; (void)output_size; if (output && output_size > 0) { snprintf(output, output_size, "Error: GPIO tool is disabled in this build."); } return ESP_OK; } #endif