Kestrel Interface
Loading...
Searching...
No Matches
kest_context.h
Go to the documentation of this file.
1#ifndef KEST_ESP32_CONTEXT_H_
2#define KEST_ESP32_CONTEXT_H_
3
4#define MAX_N_PROFILES 256
5
6#define CONTEXT_PROFILE_ID 0xFFFF
7#define INPUT_GAIN_PID 0x0000
8#define OUTPUT_GAIN_PID 0x0001
9
10typedef kest_profile_pll profile_ll;
11
12typedef struct kest_context
13{
16
20
21 #ifdef KEST_ENABLE_UI
23 #endif
24
27
30
33
34 kest_effect_desc_pll *effects;
35
38
39 #ifdef KEST_ENABLE_REPRESENTATIONS
40 kest_representation_pll state_rep_lstub;
41 kest_representation state_rep;
42 #endif
43
44 #ifdef KEST_USE_FREERTOS
45 SemaphoreHandle_t mutex;
46 #endif
48
49#ifdef KEST_ENABLE_GLOBAL_CONTEXT
51#endif
52
57
62
64
65kest_profile *cxt_get_profile_by_id(kest_context *cxt, uint16_t profile_id);
66kest_effect *cxt_get_effect_by_id(kest_context *cxt, uint16_t profile_id, uint16_t effect_id);
67kest_parameter *cxt_get_parameter_by_id(kest_context *cxt, uint16_t profile_id, uint16_t effect_id, uint16_t parameter_id);
69kest_setting *cxt_get_setting_by_id(kest_context *cxt, uint16_t profile_id, uint16_t effect_id, uint16_t parameter_id);
70
71kest_profile *cxt_get_profile_by_fname(kest_context *cxt, const char *fname);
73
74int cxt_effect_id_to_position(kest_context *cxt, uint16_t profile_id, uint16_t effect_id);
75int cxt_effect_position_to_id(kest_context *cxt, uint16_t profile_id, uint16_t effect_pos);
76
77int cxt_remove_effect(kest_context *cxt, uint16_t pid, uint16_t tid);
80
84
87
89
92
94
95int cxt_handle_hw_switch(kest_context *cxt, int sw);
96
97kest_profile *cxt_find_profile(kest_context *cxt, const char *fname);
98
101
103
104int kest_cxt_set_input_gain(kest_context *cxt, float gain);
105int kest_cxt_set_output_gain(kest_context *cxt, float gain);
106
108
109#endif
int set_profile_as_default(kest_context *cxt, kest_profile *profile)
int cxt_get_parameter_and_effect_by_id(kest_context *cxt, kest_parameter_id id, kest_parameter **pp, kest_effect **tp)
int kest_context_add_profile(kest_context *cxt)
int kest_cxt_set_output_gain(kest_context *cxt, float gain)
int kest_context_init_ui(kest_context *cxt)
int cxt_save_all_profiles(kest_context *cxt)
int set_working_profile(kest_profile *profile)
void context_print_profiles(kest_context *cxt)
kest_profile * cxt_find_profile(kest_context *cxt, const char *fname)
kest_setting * cxt_get_setting_by_id(kest_context *cxt, uint16_t profile_id, uint16_t effect_id, uint16_t parameter_id)
int set_active_profile(kest_profile *profile)
int cxt_remove_effect(kest_context *cxt, uint16_t pid, uint16_t tid)
int kest_cxt_release_mutex(kest_context *cxt)
kest_parameter * cxt_get_parameter_by_id(kest_context *cxt, uint16_t profile_id, uint16_t effect_id, uint16_t parameter_id)
int kest_cxt_obtain_mutex(kest_context *cxt)
kest_effect * cxt_get_effect_by_id(kest_context *cxt, uint16_t profile_id, uint16_t effect_id)
kest_sequence * cxt_get_sequence_by_fname(kest_context *cxt, const char *fname)
int set_active_profile_from_sequence(kest_profile *profile)
kest_profile_pll profile_ll
int resolve_default_profile(kest_context *cxt)
int cxt_effect_id_to_position(kest_context *cxt, uint16_t profile_id, uint16_t effect_id)
int kest_cxt_queue_save_state(kest_context *cxt)
int kest_context_enlarge_profile_array(kest_context *cxt)
kest_profile * kest_context_add_profile_rp(kest_context *cxt)
kest_effect_desc * kest_cxt_get_effect_desc_from_cname(kest_context *cxt, const char *cname)
int context_no_default_profile(kest_context *cxt)
int kest_cxt_set_input_gain(kest_context *cxt, float gain)
int cxt_effect_position_to_id(kest_context *cxt, uint16_t profile_id, uint16_t effect_pos)
int cxt_remove_sequence(kest_context *cxt, kest_sequence *sequence)
kest_profile * cxt_get_profile_by_id(kest_context *cxt, uint16_t profile_id)
int kest_init_context(kest_context *cxt)
int cxt_handle_hw_switch(kest_context *cxt, int sw)
kest_profile * cxt_get_profile_by_fname(kest_context *cxt, const char *fname)
int kest_context_init_effect_list(kest_context *cxt)
int cxt_remove_profile(kest_context *cxt, kest_profile *profile)
kest_sequence * kest_context_add_sequence_rp(kest_context *cxt)
int cxt_set_all_profiles_left_button_to_main_menu(kest_context *cxt)
int kest_context_init_main_sequence(kest_context *cxt)
int kest_context_set_n_profiles(kest_context *cxt, int n)
kest_context global_cxt
Definition kest_int.c:12
kest_sequence_pll sequence_ll
kest_sequence * sequence
int saved_sequences_loaded
kest_parameter input_gain
profile_ll * profiles
kest_sequence main_sequence
int saved_profiles_loaded
kest_effect_desc_pll * effects
int active_profile_id
sequence_ll * sequences
kest_profile * working_profile
kest_parameter output_gain
kest_profile * active_profile
kest_profile * default_profile