5 #include "pluginaclient.h"
9 class SoundLevelEffect
;
10 class SoundLevelWindow
;
15 class SoundLevelConfig
19 void copy_from(SoundLevelConfig
&that
);
20 int equivalent(SoundLevelConfig
&that
);
21 void interpolate(SoundLevelConfig
&prev
,
22 SoundLevelConfig
&next
,
25 int64_t current_frame
);
29 class SoundLevelDuration
: public BC_FSlider
32 SoundLevelDuration(SoundLevelEffect
*plugin
, int x
, int y
);
34 SoundLevelEffect
*plugin
;
37 class SoundLevelWindow
: public BC_Window
40 SoundLevelWindow(SoundLevelEffect
*plugin
, int x
, int y
);
41 void create_objects();
45 BC_Title
*soundlevel_max
;
46 BC_Title
*soundlevel_rms
;
47 SoundLevelDuration
*duration
;
48 SoundLevelEffect
*plugin
;
55 PLUGIN_THREAD_HEADER(SoundLevelEffect
, SoundLevelThread
, SoundLevelWindow
)
60 class SoundLevelEffect
: public PluginAClient
63 SoundLevelEffect(PluginServer
*server
);
67 void read_data(KeyFrame
*keyframe
);
68 void save_data(KeyFrame
*keyframe
);
69 int process_realtime(int64_t size
, double *input_ptr
, double *output_ptr
);
77 void render_gui(void *data
, int size
);
81 PLUGIN_CLASS_MEMBERS(SoundLevelConfig
, SoundLevelThread
)