myMPD
Internal API documentation
Loading...
Searching...
No Matches
util.h
Go to the documentation of this file.
1/*
2 SPDX-License-Identifier: GPL-3.0-or-later
3 myMPD (c) 2018-2025 Juergen Mang <mail@jcgames.de>
4 https://github.com/jcorporation/mympd
5*/
6
11#ifndef MYMPD_SCRIPTS_UTIL_H
12#define MYMPD_SCRIPTS_UTIL_H
13
14#include "dist/rax/rax.h"
15#include "dist/sds/sds.h"
16#include "src/lib/list.h"
17#include "src/scripts/events.h"
18
19#include <lauxlib.h>
20#include <lua.h>
21#include <lualib.h>
22
33
41
54
56void scripts_state_save(struct t_scripts_state *scripts_state, bool free_data);
57void scripts_state_default(struct t_scripts_state *scripts_state, struct t_config *config);
58void scripts_state_free(struct t_scripts_state *scripts_state);
59void send_script_raw_response(unsigned long conn_id, const char *partition, sds data);
60void send_script_raw_error(unsigned long conn_id, const char *partition, const char *data);
61sds script_get_result(lua_State *lua_vm, int rc);
62void free_t_script_thread_arg(struct t_script_thread_arg *script_thread_arg);
63
64#endif
Events helper functions.
script_start_events
Definition events.h:19
Linked list implementation.
Definition config_def.h:22
Definition list.h:21
Definition list.h:32
Definition util.h:37
sds script
script itself
Definition util.h:38
sds bytecode
precompiled script byte code
Definition util.h:39
Definition util.h:45
struct t_config * config
pointer to myMPD config
Definition util.h:52
unsigned request_id
jsonrpc request id
Definition util.h:51
enum script_start_events start_event
script start event
Definition util.h:49
sds partition
execute the script in this partition
Definition util.h:48
sds script_name
name of the script
Definition util.h:47
lua_State * lua_vm
new lua vm
Definition util.h:46
unsigned long conn_id
mongoose connection id
Definition util.h:50
Definition util.h:26
struct t_list script_list
list of scripts
Definition util.h:28
struct t_list var_list
list of variables for scripts
Definition util.h:29
struct t_config * config
pointer to static config
Definition util.h:27
rax * tmp_list
list of tmp variables for scripts
Definition util.h:30
time_t tmp_list_next_exp
last expiration of the tmp_list
Definition util.h:31
void scripts_state_default(struct t_scripts_state *scripts_state, struct t_config *config)
Definition util.c:46
void scripts_state_save(struct t_scripts_state *scripts_state, bool free_data)
Definition util.c:34
void send_script_raw_response(unsigned long conn_id, const char *partition, sds data)
Definition util.c:133
sds script_get_result(lua_State *lua_vm, int rc)
Definition util.c:96
void free_t_script_thread_arg(struct t_script_thread_arg *script_thread_arg)
Definition util.c:81
void send_script_raw_error(unsigned long conn_id, const char *partition, const char *data)
Definition util.c:145
void list_free_cb_script_list_user_data(struct t_list_node *current)
Definition util.c:58
void scripts_state_free(struct t_scripts_state *scripts_state)
Definition util.c:69