diff options
author | cbdev <cb@cbcdn.com> | 2017-06-03 23:02:46 +0200 |
---|---|---|
committer | cbdev <cb@cbcdn.com> | 2017-06-03 23:02:46 +0200 |
commit | b7e009a98698c4ed81b16cbc274a3b47793c1bab (patch) | |
tree | d0f130451f381bea80822b5d1533fca36d4f3434 /midimonster.h | |
parent | 19fd0404ba636ff5f67cbf218d175ccbef29579a (diff) | |
download | midimonster-b7e009a98698c4ed81b16cbc274a3b47793c1bab.tar.gz midimonster-b7e009a98698c4ed81b16cbc274a3b47793c1bab.tar.bz2 midimonster-b7e009a98698c4ed81b16cbc274a3b47793c1bab.zip |
Config parser
Diffstat (limited to 'midimonster.h')
-rw-r--r-- | midimonster.h | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/midimonster.h b/midimonster.h index 59c97eb..8c323f1 100644 --- a/midimonster.h +++ b/midimonster.h @@ -1,3 +1,5 @@ +#ifndef MIDIMONSTER_HEADER +#define MIDIMONSTER_HEADER #include <stdio.h> #include <stdlib.h> #include <stdint.h> @@ -8,12 +10,12 @@ struct _channel_value; struct _backend_channel; struct _backend_instance; -typedef int (*mmbackend_handle_event)(struct _backend_channel* c, struct _channel_value v); -typedef struct _backend_channel* (*mmbackend_parse_channel)(char* spec); -typedef int (*mmbackend_configure)(char* option, char* value); +typedef int (*mmbackend_handle_event)(size_t channels, struct _backend_channel* c, struct _channel_value* v); typedef struct _backend_instance* (*mmbackend_create_instance)(); -typedef int (*mmbackend_configure_instance)(char* option, char* value); -typedef int (*mmbackend_process_fd)(int fd, void** impl); +typedef struct _backend_channel* (*mmbackend_parse_channel)(struct _backend_instance* instance, char* spec); +typedef int (*mmbackend_configure)(char* option, char* value); +typedef int (*mmbackend_configure_instance)(struct _backend_instance* instance, char* option, char* value); +typedef int (*mmbackend_process_fd)(size_t fds, int* fd, void** impl); typedef int (*mmbackend_shutdown)(); typedef struct _channel_value { @@ -46,6 +48,7 @@ typedef struct _backend_channel { void* impl; } channel; +//FIXME might be replaced by struct pollfd typedef struct /*_mm_managed_fd*/ { int fd; backend* backend; @@ -55,3 +58,6 @@ typedef struct /*_mm_managed_fd*/ { backend* mm_backend_register(backend b); int mm_manage_fd(int fd, backend* b, int manage, void* impl); int mm_channel_event(channel* c, channel_value v); + +void mm_instance_free(instance* i); +#endif |