CTS-SAT-1-OBC-Firmware
Loading...
Searching...
No Matches
configuration.h
Go to the documentation of this file.
1#ifndef INCLUDE_GUARD__CONFIGURATION_H
2#define INCLUDE_GUARD__CONFIGURATION_H
3
4#include <stdint.h>
5
6typedef struct
7{
8 const char *variable_name;
9 uint32_t *num_config_var;
11
12typedef struct
13{
14 const char *variable_name;
16 const uint8_t max_length; // max length, including the null terminator
18
19static const uint8_t CONFIG_MAX_VARIABLE_NAME_LENGTH = 200;
20
21static const uint8_t CONFIG_MAX_JSON_STRING_LENGTH = UINT8_MAX;
22
23// extern for EPS
24extern uint32_t EPS_monitor_interval_ms;
25
26// extern
28
29// extern
31
32// extern
33extern const uint8_t CONFIG_int_config_variables_count;
34
35// extern
37
38// extern
39extern const uint8_t CONFIG_str_config_variables_count;
40
41// extern
42extern uint32_t TCMD_require_unique_tssent;
43
44int16_t CONFIG_get_int_var_index(const char *search_name);
45
46int16_t CONFIG_get_str_var_index(const char *search_name);
47
48uint8_t CONFIG_set_int_variable(const char *var_name, const uint64_t new_value);
49
50uint8_t CONFIG_set_str_variable(const char *var_name, const char *new_value);
51
52uint16_t CONFIG_int_var_to_json(const char *config_var, char *json_str, const uint16_t json_str_max_len);
53
54uint16_t CONFIG_all_int_vars_to_json(char *json_str, const uint16_t json_str_size);
55
56uint16_t CONFIG_str_var_to_json(const char *var_name, char *json_str, const uint16_t json_str_max_len);
57
58#endif // INCLUDE_GUARD__CONFIGURATION_H
const uint8_t CONFIG_int_config_variables_count
Definition configuration.c:176
CONFIG_string_config_entry_t CONFIG_str_config_variables[]
Definition configuration.c:185
uint8_t CONFIG_set_int_variable(const char *var_name, const uint64_t new_value)
Assigns a new value to an integer configuration variable.
Definition configuration.c:248
int16_t CONFIG_get_int_var_index(const char *search_name)
Finds an int config variable in CONFIG_int_config_variables and returns its index.
Definition configuration.c:216
const uint32_t CONFIG_freertos_min_remaining_stack_percent
The percentage of the stack space that should remain free. If the free space falls below this percent...
Definition configuration.c:48
const uint8_t CONFIG_str_config_variables_count
Definition configuration.c:210
uint8_t CONFIG_set_str_variable(const char *var_name, const char *new_value)
Assigns a new value to a string configuration variable.
Definition configuration.c:270
uint32_t EPS_monitor_interval_ms
The interval at which the EPS_monitor_and_disable_overcurrent_channels task runs.
Definition configuration.c:39
uint16_t CONFIG_int_var_to_json(const char *config_var, char *json_str, const uint16_t json_str_max_len)
Converts an integer configuration variable to a JSON string.
Definition configuration.c:296
uint16_t CONFIG_str_var_to_json(const char *var_name, char *json_str, const uint16_t json_str_max_len)
Converts a string configuration variable to a JSON string.
Definition configuration.c:350
int16_t CONFIG_get_str_var_index(const char *search_name)
Finds a string config variable in CONFIG_str_config_variables and returns its index.
Definition configuration.c:231
uint16_t CONFIG_all_int_vars_to_json(char *json_str, const uint16_t json_str_size)
Converts ALL integer configuration variables to a tightly-packed JSON dictionary string.
Definition configuration.c:313
CONFIG_integer_config_entry_t CONFIG_int_config_variables[]
Definition configuration.c:51
static const uint8_t CONFIG_MAX_VARIABLE_NAME_LENGTH
Definition configuration.h:19
uint32_t TCMD_require_unique_tssent
Boolean. Whether to require the @tssent suffix tag for all telecommands.
Definition configuration.c:44
static const uint8_t CONFIG_MAX_JSON_STRING_LENGTH
Definition configuration.h:21
Definition configuration.h:7
const char * variable_name
Definition configuration.h:8
uint32_t * num_config_var
Definition configuration.h:9
Definition configuration.h:13
const uint8_t max_length
Definition configuration.h:16
const char * variable_name
Definition configuration.h:14
char * variable_pointer
Definition configuration.h:15