summaryrefslogtreecommitdiffstats
path: root/Alc/evtqueue.h
blob: ab41c4273863420caaa51efaf33c47601adc3a4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef AL_EVTQUEUE_H
#define AL_EVTQUEUE_H

#include "AL/al.h"

#include "alMain.h"

typedef struct MidiEvent {
    ALuint64 time;
    ALuint event;
    ALuint param[2];
} MidiEvent;

typedef struct EvtQueue {
    MidiEvent *events;
    ALsizei pos;
    ALsizei size;
    ALsizei maxsize;
} EvtQueue;

void InitEvtQueue(EvtQueue *queue);
void ResetEvtQueue(EvtQueue *queue);
ALenum InsertEvtQueue(EvtQueue *queue, const MidiEvent *evt);

#endif /* AL_EVTQUEUE_H */