4 #include "defaults.inc"
7 #include "mainprogress.inc"
8 #include "pluginaclient.h"
9 #include "resample.inc"
10 #include "timestretchengine.inc"
17 class TimeStretchWindow
;
22 class TimeStretchFraction
: public BC_TextBox
25 TimeStretchFraction(TimeStretch
*plugin
, int x
, int y
);
31 class TimeStretchFreq
: public BC_Radial
34 TimeStretchFreq(TimeStretch
*plugin
, TimeStretchWindow
*gui
, int x
, int y
);
37 TimeStretchWindow
*gui
;
40 class TimeStretchTime
: public BC_Radial
43 TimeStretchTime(TimeStretch
*plugin
, TimeStretchWindow
*gui
, int x
, int y
);
46 TimeStretchWindow
*gui
;
50 class TimeStretchWindow
: public BC_Window
53 TimeStretchWindow(TimeStretch
*plugin
, int x
, int y
);
56 void create_objects();
59 TimeStretchFreq
*freq
;
60 TimeStretchTime
*time
;
64 class PitchEngine
: public CrossfadeFFT
67 PitchEngine(TimeStretch
*plugin
);
75 class TimeStretch
: public PluginAClient
78 TimeStretch(PluginServer
*server
);
86 int process_loop(double *buffer
, int64_t &write_length
);
103 TimeStretchEngine
*stretch
;
106 MainProgressBar
*progress
;
108 int64_t current_position
;
109 int64_t total_written
;