summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/buffering.c74
-rw-r--r--apps/buffering.h34
-rw-r--r--apps/plugin.h32
3 files changed, 71 insertions, 69 deletions
diff --git a/apps/buffering.c b/apps/buffering.c
index 0cb428c947..d49669777b 100644
--- a/apps/buffering.c
+++ b/apps/buffering.c
@@ -182,7 +182,7 @@ enum {
};
/* Buffering thread */
-void buffering_thread(void);
+static void buffering_thread(void);
static long buffering_stack[(DEFAULT_STACK_SIZE + 0x2000)/sizeof(long)];
static const char buffering_thread_name[] = "buffering";
static struct thread_entry *buffering_thread_p;
@@ -190,7 +190,7 @@ static struct event_queue buffering_queue;
static struct queue_sender_list buffering_queue_sender_list;
-static void call_buffering_callbacks(enum callback_event ev, int value);
+static void call_buffering_callbacks(const enum callback_event ev, const int value);
/*
@@ -407,7 +407,7 @@ static struct memory_handle *find_handle(const int handle_id)
found in the linked list for adjustment. This function has no side
effects if NULL is returned. */
static bool move_handle(struct memory_handle **h, size_t *delta,
- const size_t data_size, bool can_wrap)
+ const size_t data_size, const bool can_wrap)
{
struct memory_handle *dest;
const struct memory_handle *src;
@@ -492,7 +492,7 @@ static bool move_handle(struct memory_handle **h, size_t *delta,
if (overlap > 0) {
size_t first_part = size_to_move - overlap;
memmove(dest, src, first_part);
- memmove(buffer, (char *)src + first_part, overlap);
+ memmove(buffer, (const char *)src + first_part, overlap);
} else {
memmove(dest, src, size_to_move);
}
@@ -559,7 +559,7 @@ static inline bool buffer_is_low(void)
/* Buffer data for the given handle.
Return whether or not the buffering should continue explicitly. */
-static bool buffer_handle(int handle_id)
+static bool buffer_handle(const int handle_id)
{
logf("buffer_handle(%d)", handle_id);
struct memory_handle *h = find_handle(handle_id);
@@ -667,7 +667,7 @@ static bool buffer_handle(int handle_id)
/* Reset writing position and data buffer of a handle to its current offset.
Use this after having set the new offset to use. */
-static void reset_handle(int handle_id)
+static void reset_handle(const int handle_id)
{
logf("reset_handle(%d)", handle_id);
@@ -687,7 +687,7 @@ static void reset_handle(int handle_id)
}
/* Seek to a nonbuffered part of a handle by rebuffering the data. */
-static void rebuffer_handle(int handle_id, size_t newpos)
+static void rebuffer_handle(const int handle_id, const size_t newpos)
{
struct memory_handle *h = find_handle(handle_id);
if (!h)
@@ -725,7 +725,7 @@ static void rebuffer_handle(int handle_id, size_t newpos)
h->ridx = h->data;
}
-static bool close_handle(int handle_id)
+static bool close_handle(const int handle_id)
{
struct memory_handle *h = find_handle(handle_id);
@@ -774,7 +774,7 @@ static void shrink_handle(struct memory_handle *h)
/* when moving an mp3entry we need to readjust its pointers. */
adjust_mp3entry((struct mp3entry *)&buffer[h->data],
(void *)&buffer[h->data],
- (void *)&buffer[olddata]);
+ (const void *)&buffer[olddata]);
} else if (h->type == TYPE_BITMAP) {
/* adjust the bitmap's pointer */
struct bitmap *bmp = (struct bitmap *)&buffer[h->data];
@@ -873,7 +873,7 @@ management functions for all the actual handle management work.
return value: <0 if the file cannot be opened, or one file already
queued to be opened, otherwise the handle for the file in the buffer
*/
-int bufopen(const char *file, size_t offset, enum data_type type)
+int bufopen(const char *file, size_t offset, const enum data_type type)
{
int fd = open(file, O_RDONLY);
if (fd < 0)
@@ -955,7 +955,7 @@ int bufopen(const char *file, size_t offset, enum data_type type)
requested amount of data can entirely fit in the buffer without wrapping.
Return value is the handle id for success or <0 for failure.
*/
-int bufalloc(const void *src, size_t size, enum data_type type)
+int bufalloc(const void *src, const size_t size, const enum data_type type)
{
struct memory_handle *h = add_handle(size, false, true);
@@ -966,7 +966,7 @@ int bufalloc(const void *src, size_t size, enum data_type type)
if (type == TYPE_ID3 && size == sizeof(struct mp3entry)) {
/* specially take care of struct mp3entry */
copy_mp3entry((struct mp3entry *)&buffer[buf_widx],
- (struct mp3entry *)src);
+ (const struct mp3entry *)src);
} else {
memcpy(&buffer[buf_widx], src, size);
}
@@ -990,7 +990,7 @@ int bufalloc(const void *src, size_t size, enum data_type type)
}
/* Close the handle. Return true for success and false for failure */
-bool bufclose(int handle_id)
+bool bufclose(const int handle_id)
{
logf("bufclose(%d)", handle_id);
@@ -1004,7 +1004,7 @@ bool bufclose(int handle_id)
-1 if the handle wasn't found
-2 if the new requested position was beyond the end of the file
*/
-int bufseek(int handle_id, size_t newpos)
+int bufseek(const int handle_id, const size_t newpos)
{
struct memory_handle *h = find_handle(handle_id);
if (!h)
@@ -1026,7 +1026,7 @@ int bufseek(int handle_id, size_t newpos)
/* Advance the reading index in a handle (relatively to its current position).
Return 0 for success and < 0 for failure */
-int bufadvance(int handle_id, off_t offset)
+int bufadvance(const int handle_id, const off_t offset)
{
const struct memory_handle *h = find_handle(handle_id);
if (!h)
@@ -1094,7 +1094,7 @@ static struct memory_handle *prep_bufdata(const int handle_id, size_t *size,
Return the number of bytes copied or < 0 for failure (handle not found).
The caller is blocked until the requested amount of data is available.
*/
-ssize_t bufread(int handle_id, size_t size, void *dest)
+ssize_t bufread(const int handle_id, size_t size, void *dest)
{
const struct memory_handle *h;
@@ -1126,7 +1126,7 @@ ssize_t bufread(int handle_id, size_t size, void *dest)
The guard buffer may be used to provide the requested size. This means it's
unsafe to request more than the size of the guard buffer.
*/
-ssize_t bufgetdata(int handle_id, size_t size, void **data)
+ssize_t bufgetdata(const int handle_id, size_t size, void **data)
{
const struct memory_handle *h;
@@ -1141,7 +1141,7 @@ ssize_t bufgetdata(int handle_id, size_t size, void **data)
size_t copy_n = h->ridx + size - buffer_len;
/* prep_bufdata ensures size <= buffer_len - h->ridx + GUARD_BUFSIZE,
so copy_n <= GUARD_BUFSIZE */
- memcpy(guard_buffer, (unsigned char *)buffer, copy_n);
+ memcpy(guard_buffer, (const unsigned char *)buffer, copy_n);
}
if (data)
@@ -1150,7 +1150,7 @@ ssize_t bufgetdata(int handle_id, size_t size, void **data)
return size;
}
-ssize_t bufgettail(int handle_id, size_t size, void **data)
+ssize_t bufgettail(const int handle_id, const size_t size, void **data)
{
size_t tidx;
@@ -1173,14 +1173,14 @@ ssize_t bufgettail(int handle_id, size_t size, void **data)
if (tidx + size > buffer_len)
{
size_t copy_n = tidx + size - buffer_len;
- memcpy(guard_buffer, (unsigned char *)buffer, copy_n);
+ memcpy(guard_buffer, (const unsigned char *)buffer, copy_n);
}
*data = &buffer[tidx];
return size;
}
-ssize_t bufcuttail(int handle_id, size_t size)
+ssize_t bufcuttail(const int handle_id, size_t size)
{
struct memory_handle *h;
@@ -1198,9 +1198,9 @@ ssize_t bufcuttail(int handle_id, size_t size)
h->available -= size;
h->filesize -= size;
h->widx = RINGBUF_SUB(h->widx, size);
- if (h == cur_handle) {
+ if (h == cur_handle)
buf_widx = h->widx;
- }
+
return size;
}
@@ -1223,7 +1223,7 @@ management functions for all the actual handle management work.
*/
/* Get a handle offset from a pointer */
-ssize_t buf_get_offset(int handle_id, void *ptr)
+ssize_t buf_get_offset(const int handle_id, void *ptr)
{
const struct memory_handle *h = find_handle(handle_id);
if (!h)
@@ -1232,7 +1232,7 @@ ssize_t buf_get_offset(int handle_id, void *ptr)
return (size_t)ptr - (size_t)&buffer[h->ridx];
}
-ssize_t buf_handle_offset(int handle_id)
+ssize_t buf_handle_offset(const int handle_id)
{
const struct memory_handle *h = find_handle(handle_id);
if (!h)
@@ -1240,13 +1240,13 @@ ssize_t buf_handle_offset(int handle_id)
return h->offset;
}
-void buf_request_buffer_handle(int handle_id)
+void buf_request_buffer_handle(const int handle_id)
{
LOGFQUEUE("buffering >| Q_START_FILL %d",handle_id);
queue_send(&buffering_queue, Q_START_FILL, handle_id);
}
-void buf_set_base_handle(int handle_id)
+void buf_set_base_handle(const int handle_id)
{
LOGFQUEUE("buffering > Q_BASE_HANDLE %d", handle_id);
queue_post(&buffering_queue, Q_BASE_HANDLE, handle_id);
@@ -1258,13 +1258,13 @@ size_t buf_used(void)
return BUF_USED;
}
-void buf_set_watermark(size_t bytes)
+void buf_set_watermark(const size_t bytes)
{
LOGFQUEUE("buffering > Q_SET_WATERMARK %ld", (long)bytes);
queue_post(&buffering_queue, Q_SET_WATERMARK, bytes);
}
-bool register_buffering_callback(buffering_callback func)
+bool register_buffering_callback(const buffering_callback func)
{
int i;
if (buffer_callback_count >= MAX_BUF_CALLBACKS)
@@ -1283,7 +1283,7 @@ bool register_buffering_callback(buffering_callback func)
return false;
}
-void unregister_buffering_callback(buffering_callback func)
+void unregister_buffering_callback(const buffering_callback func)
{
int i;
for (i = 0; i < MAX_BUF_CALLBACKS; i++)
@@ -1297,7 +1297,7 @@ void unregister_buffering_callback(buffering_callback func)
return;
}
-static void call_buffering_callbacks(enum callback_event ev, int value)
+static void call_buffering_callbacks(const enum callback_event ev, const int value)
{
logf("call_buffering_callbacks()");
int i;
@@ -1310,8 +1310,8 @@ static void call_buffering_callbacks(enum callback_event ev, int value)
}
}
-static void shrink_buffer_inner(struct memory_handle *h) {
-
+static void shrink_buffer_inner(struct memory_handle *h)
+{
if (h == NULL)
return;
@@ -1320,7 +1320,8 @@ static void shrink_buffer_inner(struct memory_handle *h) {
shrink_handle(h);
}
-static void shrink_buffer(void) {
+static void shrink_buffer(void)
+{
logf("shrink_buffer()");
shrink_buffer_inner(first_handle);
}
@@ -1444,7 +1445,8 @@ void buffering_thread(void)
}
}
-void buffering_init(void) {
+void buffering_init(void)
+{
mutex_init(&llist_mutex);
#ifdef HAVE_PRIORITY_SCHEDULING
/* This behavior not safe atm */
@@ -1464,7 +1466,7 @@ void buffering_init(void) {
}
/* Initialise the buffering subsystem */
-bool buffering_reset(char *buf, size_t buflen)
+bool buffering_reset(char *buf, const size_t buflen)
{
if (!buf || !buflen)
return false;
diff --git a/apps/buffering.h b/apps/buffering.h
index bc61ec5e6d..abe8f608c6 100644
--- a/apps/buffering.h
+++ b/apps/buffering.h
@@ -56,7 +56,7 @@ enum callback_event {
void buffering_init(void);
/* Reset the buffering system */
-bool buffering_reset(char *buf, size_t buflen);
+bool buffering_reset(char *buf, const size_t buflen);
/***************************************************************************
@@ -80,15 +80,15 @@ bool buffering_reset(char *buf, size_t buflen);
#define BUF_MAX_HANDLES 256
-int bufopen(const char *file, size_t offset, enum data_type type);
-int bufalloc(const void *src, size_t size, enum data_type type);
-bool bufclose(int handle_id);
-int bufseek(int handle_id, size_t newpos);
-int bufadvance(int handle_id, off_t offset);
-ssize_t bufread(int handle_id, size_t size, void *dest);
-ssize_t bufgetdata(int handle_id, size_t size, void **data);
-ssize_t bufgettail(int handle_id, size_t size, void **data);
-ssize_t bufcuttail(int handle_id, size_t size);
+int bufopen(const char *file, size_t offset, const enum data_type type);
+int bufalloc(const void *src, const size_t size, const enum data_type type);
+bool bufclose(const int handle_id);
+int bufseek(const int handle_id, const size_t newpos);
+int bufadvance(const int handle_id, const off_t offset);
+ssize_t bufread(const int handle_id, size_t size, void *dest);
+ssize_t bufgetdata(const int handle_id, size_t size, void **data);
+ssize_t bufgettail(const int handle_id, const size_t size, void **data);
+ssize_t bufcuttail(const int handle_id, size_t size);
/***************************************************************************
@@ -102,10 +102,10 @@ ssize_t bufcuttail(int handle_id, size_t size);
* buf_used: Total amount of buffer space used (including allocated space)
****************************************************************************/
-ssize_t buf_get_offset(int handle_id, void *ptr);
-ssize_t buf_handle_offset(int handle_id);
-void buf_request_buffer_handle(int handle_id);
-void buf_set_base_handle(int handle_id);
+ssize_t buf_get_offset(const int handle_id, void *ptr);
+ssize_t buf_handle_offset(const int handle_id);
+void buf_request_buffer_handle(const int handle_id);
+void buf_set_base_handle(const int handle_id);
size_t buf_used(void);
@@ -123,9 +123,9 @@ size_t buf_used(void);
****************************************************************************/
#define MAX_BUF_CALLBACKS 4
-typedef void (*buffering_callback)(enum callback_event ev, int value);
-bool register_buffering_callback(buffering_callback func);
-void unregister_buffering_callback(buffering_callback func);
+typedef void (*buffering_callback)(const enum callback_event ev, const int value);
+bool register_buffering_callback(const buffering_callback func);
+void unregister_buffering_callback(const buffering_callback func);
/* Settings */
enum {
diff --git a/apps/plugin.h b/apps/plugin.h
index 66ed5fdbb2..27fcffb69c 100644
--- a/apps/plugin.h
+++ b/apps/plugin.h
@@ -120,12 +120,12 @@
#define PLUGIN_MAGIC 0x526F634B /* RocK */
/* increase this every time the api struct changes */
-#define PLUGIN_API_VERSION 103
+#define PLUGIN_API_VERSION 104
/* update this to latest version if a change to the api struct breaks
backwards compatibility (and please take the opportunity to sort in any
new function which are "waiting" at the end of the function table) */
-#define PLUGIN_MIN_API_VERSION 103
+#define PLUGIN_MIN_API_VERSION 104
/* plugin return codes */
enum plugin_status {
@@ -684,20 +684,20 @@ struct plugin_api {
#if (CONFIG_CODEC == SWCODEC)
/* buffering API */
- int (*bufopen)(const char *file, size_t offset, enum data_type type);
- int (*bufalloc)(const void *src, size_t size, enum data_type type);
- bool (*bufclose)(int handle_id);
- int (*bufseek)(int handle_id, size_t newpos);
- int (*bufadvance)(int handle_id, off_t offset);
- ssize_t (*bufread)(int handle_id, size_t size, void *dest);
- ssize_t (*bufgetdata)(int handle_id, size_t size, void **data);
- ssize_t (*bufgettail)(int handle_id, size_t size, void **data);
- ssize_t (*bufcuttail)(int handle_id, size_t size);
-
- ssize_t (*buf_get_offset)(int handle_id, void *ptr);
- ssize_t (*buf_handle_offset)(int handle_id);
- void (*buf_request_buffer_handle)(int handle_id);
- void (*buf_set_base_handle)(int handle_id);
+ int (*bufopen)(const char *file, size_t offset, const enum data_type type);
+ int (*bufalloc)(const void *src, const size_t size, const enum data_type type);
+ bool (*bufclose)(const int handle_id);
+ int (*bufseek)(const int handle_id, const size_t newpos);
+ int (*bufadvance)(const int handle_id, const off_t offset);
+ ssize_t (*bufread)(const int handle_id, size_t size, void *dest);
+ ssize_t (*bufgetdata)(const int handle_id, size_t size, void **data);
+ ssize_t (*bufgettail)(const int handle_id, const size_t size, void **data);
+ ssize_t (*bufcuttail)(const int handle_id, size_t size);
+
+ ssize_t (*buf_get_offset)(const int handle_id, void *ptr);
+ ssize_t (*buf_handle_offset)(const int handle_id);
+ void (*buf_request_buffer_handle)(const int handle_id);
+ void (*buf_set_base_handle)(const int handle_id);
size_t (*buf_used)(void);
#endif