MediaProcessors
audio_settings.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017 Rafael Antoniello
3  *
4  * This file is part of MediaProcessors.
5  *
6  * MediaProcessors is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU Lesser General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * MediaProcessors is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public License
17  * along with MediaProcessors. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
26 #ifndef MEDIAPROCESSORS_SRC_AUDIO_SETTINGS_H_
27 #define MEDIAPROCESSORS_SRC_AUDIO_SETTINGS_H_
28 
29 #include <libmediaprocsutils/mem_utils.h>
30 
31 /* **** Definitions **** */
32 
33 /* Forward definitions */
34 typedef struct log_ctx_s log_ctx_t;
35 typedef struct cJSON cJSON;
36 
42 typedef struct audio_settings_enc_ctx_s {
52 
58 typedef struct audio_settings_dec_ctx_s {
64 
65 /* **** Prototypes **** */
66 
72 
79  audio_settings_enc_ctx_t **ref_audio_settings_enc_ctx);
80 
89  volatile audio_settings_enc_ctx_t *audio_settings_enc_ctx);
90 
98  volatile audio_settings_enc_ctx_t *audio_settings_enc_ctx);
99 
112  const audio_settings_enc_ctx_t *audio_settings_enc_ctx_src,
113  audio_settings_enc_ctx_t *audio_settings_enc_ctx_dst);
114 
125  volatile audio_settings_enc_ctx_t *audio_settings_enc_ctx,
126  const char *str, log_ctx_t *log_ctx);
127 
139  volatile audio_settings_enc_ctx_t *audio_settings_enc_ctx,
140  cJSON **ref_cjson_rest, log_ctx_t *log_ctx);
141 
147 
154  audio_settings_dec_ctx_t **ref_audio_settings_dec_ctx);
155 
164  volatile audio_settings_dec_ctx_t *audio_settings_dec_ctx);
165 
173  volatile audio_settings_dec_ctx_t *audio_settings_dec_ctx);
174 
187  const audio_settings_dec_ctx_t *audio_settings_dec_ctx_src,
188  audio_settings_dec_ctx_t *audio_settings_dec_ctx_dst);
189 
200  volatile audio_settings_dec_ctx_t *audio_settings_dec_ctx,
201  const char *str, log_ctx_t *log_ctx);
202 
214  volatile audio_settings_dec_ctx_t *audio_settings_dec_ctx,
215  cJSON **ref_cjson_rest, log_ctx_t *log_ctx);
216 
217 #endif /* MEDIAPROCESSORS_SRC_AUDIO_SETTINGS_H_ */
void audio_settings_dec_ctx_deinit(volatile audio_settings_dec_ctx_t *audio_settings_dec_ctx)
void audio_settings_dec_ctx_release(audio_settings_dec_ctx_t **ref_audio_settings_dec_ctx)
int audio_settings_dec_ctx_restful_get(volatile audio_settings_dec_ctx_t *audio_settings_dec_ctx, cJSON **ref_cjson_rest, log_ctx_t *log_ctx)
int audio_settings_dec_ctx_cpy(const audio_settings_dec_ctx_t *audio_settings_dec_ctx_src, audio_settings_dec_ctx_t *audio_settings_dec_ctx_dst)
int audio_settings_dec_ctx_init(volatile audio_settings_dec_ctx_t *audio_settings_dec_ctx)
void audio_settings_enc_ctx_release(audio_settings_enc_ctx_t **ref_audio_settings_enc_ctx)
int audio_settings_enc_ctx_init(volatile audio_settings_enc_ctx_t *audio_settings_enc_ctx)
struct audio_settings_enc_ctx_s audio_settings_enc_ctx_t
audio_settings_enc_ctx_t * audio_settings_enc_ctx_allocate()
int audio_settings_dec_ctx_restful_put(volatile audio_settings_dec_ctx_t *audio_settings_dec_ctx, const char *str, log_ctx_t *log_ctx)
int audio_settings_enc_ctx_restful_put(volatile audio_settings_enc_ctx_t *audio_settings_enc_ctx, const char *str, log_ctx_t *log_ctx)
int audio_settings_enc_ctx_cpy(const audio_settings_enc_ctx_t *audio_settings_enc_ctx_src, audio_settings_enc_ctx_t *audio_settings_enc_ctx_dst)
audio_settings_dec_ctx_t * audio_settings_dec_ctx_allocate()
Definition: log.c:102
struct audio_settings_dec_ctx_s audio_settings_dec_ctx_t
void audio_settings_enc_ctx_deinit(volatile audio_settings_enc_ctx_t *audio_settings_enc_ctx)
int audio_settings_enc_ctx_restful_get(volatile audio_settings_enc_ctx_t *audio_settings_enc_ctx, cJSON **ref_cjson_rest, log_ctx_t *log_ctx)