summaryrefslogtreecommitdiffstats
path: root/include/xas
diff options
context:
space:
mode:
Diffstat (limited to 'include/xas')
-rw-r--r--include/xas/drone.h35
1 files changed, 13 insertions, 22 deletions
diff --git a/include/xas/drone.h b/include/xas/drone.h
index e315a0c..8bb05f7 100644
--- a/include/xas/drone.h
+++ b/include/xas/drone.h
@@ -9,12 +9,6 @@
#define XAS_DRONE_CHAMBER_BASS_FREQUENCY 20 /* Hz */
#define XAS_DRONE_CHAMBER_BASS_TYPE XAS_SYNTH_SQUARE
-enum xas_drone_chamber_event_type {
- XAS_DRONE_CHAMBER_EVENT_NONE,
- XAS_DRONE_CHAMBER_EVENT_SYNTH,
- XAS_DRONE_CHAMBER_EVENT_DRONE_SPEECH
-};
-
typedef struct _xas_drone xas_drone;
struct _xas_drone {
@@ -41,15 +35,6 @@ typedef struct _xas_drone_chamber_speech {
speech_line;
} xas_drone_chamber_speech;
-typedef struct _xas_drone_chamber_event {
- enum xas_drone_chamber_event_type type;
-
- union {
- xas_drone_chamber_interval interval;
- xas_drone_chamber_speech speech;
- };
-} xas_drone_chamber_event;
-
typedef struct _xas_drone_chamber {
xas_spatial_scene *scene;
xas_drone **drones;
@@ -81,15 +66,21 @@ void xas_drone_chamber_insert_drone(xas_drone_chamber *chamber,
xas_drone *drone,
size_t index);
-int xas_drone_chamber_event_seq(xas_drone_chamber *chamber,
- xas_drone_chamber_event *ev,
- xas_seq *seq,
- int advance,
- struct timeval *now);
+int xas_drone_chamber_seq_intervals(xas_drone_chamber *chamber,
+ xas_drone_chamber_interval *intervals,
+ xas_seq *seq,
+ size_t count,
+ struct timeval *now);
+
+int xas_drone_chamber_seq_speech(xas_drone_chamber *chamber,
+ xas_drone *drone,
+ xas_seq *seq,
+ size_t speech_part,
+ struct timeval *now);
-int xas_drone_chamber_chorus_seq(xas_drone_chamber *chamber,
+int xas_drone_chamber_seq_chorus(xas_drone_chamber *chamber,
xas_seq *seq,
- int advance,
+ size_t speech_part,
struct timeval *now);
#endif /* _XAS_DRONE_H */