Skip to content

Commit 1654245

Browse files
committed
Add frontend interval API
1 parent 6a3f12b commit 1654245

File tree

3 files changed

+12
-2
lines changed

3 files changed

+12
-2
lines changed

core/backend.c

+9-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
#include "midimonster.h"
1010
#include "backend.h"
1111

12+
static uint32_t default_interval = 1000;
13+
1214
static struct {
1315
size_t n;
1416
backend* backends;
@@ -272,9 +274,15 @@ instance* instance_match(char* name){
272274
return NULL;
273275
}
274276

277+
void mm_default_interval(uint32_t interval, uint8_t force){
278+
if(interval < default_interval || force){
279+
default_interval = interval;
280+
}
281+
}
282+
275283
struct timeval backend_timeout(){
276284
size_t u;
277-
uint32_t res, secs = 1, msecs = 0;
285+
uint32_t res, secs = default_interval / 1000, msecs = default_interval % 1000;
278286

279287
for(u = 0; u < registry.n; u++){
280288
//only call interval if backend has instances

core/backend.h

+3
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ int backends_start();
1010
int backends_stop();
1111
instance* mm_instance(backend* b);
1212

13+
/* Frontend API */
14+
void mm_default_interval(uint32_t interval, uint8_t force);
15+
1316
/* Public backend API */
1417
MM_API channel* mm_channel(instance* inst, uint64_t ident, uint8_t create);
1518
MM_API void mm_channel_update(channel* chan, uint64_t ident);

core/core.c

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
#include "config.h"
2121

2222
static struct {
23-
//static size_t fds = 0;
2423
size_t n;
2524
int max;
2625
managed_fd* fd;

0 commit comments

Comments
 (0)