+class StackItem
+{
+public:
+ EDL *edl, *new_edl;
+ Indexable *idxbl;
+ Edit *edit;
+ MainUndo *undo;
+ int64_t mtime;
+ double duration;
+};
+
+class Stack : public ArrayList<StackItem>
+{
+public:
+};
+
+
+#define BEEP_SAMPLE_RATE 48000
+
+class Beeper : public Thread
+{
+public:
+ typedef int16_t audio_data_t;
+ Beeper(MWindow *mwindow);
+ ~Beeper();
+
+ void run();
+ void start();
+ void stop(int wait);
+ void tone(double freq, double secs, double gain);
+
+ MWindow *mwindow;
+ double freq, secs, gain;
+ AudioDevice *audio;
+ int playing_audio, interrupted;
+ int audio_pos;
+};
+
+
+class DrawTrackMovement : public Thread
+{
+public:
+ DrawTrackMovement(MWindow *mwindow);
+ ~DrawTrackMovement();
+ void run();
+
+ MWindow *mwindow;
+};
+
+class ConfirmRefWindow : public BC_Window
+{
+public:
+ ConfirmRefWindow(MWindow *mwindow, char *path,
+ int px, int py, int cw, int ch);
+ ~ConfirmRefWindow();
+ void create_objects();
+
+ MWindow *mwindow;
+ const char *path;
+};
+