Firmware  0.9.0
Loading...
Searching...
No Matches
utility.cpp File Reference

General utilities. More...

#include "utility.hpp"
#include <ArduinoJson.h>
#include <driver/gpio.h>
#include <esp_ipc.h>
#include <esp_system.h>
#include <freertos/message_buffer.h>
#include "log.h"
#include "mem/nvs/settings.hpp"
Include dependency graph for utility.cpp:

Namespaces

namespace  anonymous_namespace{utility.cpp}

Functions

void anonymous_namespace{utility.cpp}::restart_in_1s (void *)
 Restart in 1s.
void esp_delayed_restart ()
bool validate_json (std::string_view json)
std::optional< dcc::Address::value_type > uri2address (std::string_view uri)
std::optional< dcc::Address > uri2loco_address (std::string_view uri)
uint32_t http_receive_timeout2ms ()
esp_err_t ipc_call_blocking (BaseType_t core_id, esp_err_t(*f)())
void reset_rx_message_buffer_blocking ()
void reset_tx_message_buffer_front_blocking ()
void reset_tx_message_buffer_back_blocking ()

Detailed Description

Author
Vincent Hamp
Date
09/02/2023

Function Documentation

◆ esp_delayed_restart()

void esp_delayed_restart ( )

◆ http_receive_timeout2ms()

uint32_t http_receive_timeout2ms ( )
Warning
Do not use this function in time-critical code. Always cache the value!
Todo
document

◆ ipc_call_blocking()

esp_err_t ipc_call_blocking ( BaseType_t core_id,
esp_err_t(* f )() )
Todo
document
Todo
document

◆ reset_rx_message_buffer_blocking()

void reset_rx_message_buffer_blocking ( )
Todo
document
Todo
document

◆ reset_tx_message_buffer_back_blocking()

void reset_tx_message_buffer_back_blocking ( )
Todo
document
Todo
document

◆ reset_tx_message_buffer_front_blocking()

void reset_tx_message_buffer_front_blocking ( )
Todo
document
Todo
document

◆ uri2address()

std::optional< dcc::Address::value_type > uri2address ( std::string_view uri)

◆ uri2loco_address()

std::optional< dcc::Address > uri2loco_address ( std::string_view uri)

◆ validate_json()

bool validate_json ( std::string_view json)