summaryrefslogtreecommitdiffstats
path: root/apps/recorder/peakmeter.h
diff options
context:
space:
mode:
authorDan Everton <dan@iocaine.org>2006-03-25 13:35:31 +0000
committerDan Everton <dan@iocaine.org>2006-03-25 13:35:31 +0000
commitb66477adccfd08987e409182e15bb17e70283fae (patch)
tree46861838424afed2c2d7a6e41d429064d08f0e45 /apps/recorder/peakmeter.h
parent2b71fa855d57c1dcd19411882d545002603a9dc3 (diff)
downloadrockbox-b66477adccfd08987e409182e15bb17e70283fae.tar.gz
rockbox-b66477adccfd08987e409182e15bb17e70283fae.zip
Support the recording screen on the LCD remote. Also adds support for the peakmeter in the rremote WPS. Patch from Martin Scarratt (task 4818).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9246 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/recorder/peakmeter.h')
-rw-r--r--apps/recorder/peakmeter.h23
1 files changed, 21 insertions, 2 deletions
diff --git a/apps/recorder/peakmeter.h b/apps/recorder/peakmeter.h
index 5513dfacf1..759b4547ca 100644
--- a/apps/recorder/peakmeter.h
+++ b/apps/recorder/peakmeter.h
@@ -29,8 +29,7 @@ extern bool peak_meter_histogram(void);
extern bool peak_meter_enabled;
extern void peak_meter_playback(bool playback);
-extern void peak_meter_draw(int x, int y, int width, int height);
-extern int peak_meter_draw_get_btn(int x, int y, int width, int height);
+extern int peak_meter_draw_get_btn(int x, int y, int height);
extern void peak_meter_set_clip_hold(int time);
extern void peak_meter_peek(void);
extern void peak_meter_init_range( bool dbfs, int range_min, int range_max);
@@ -80,4 +79,24 @@ extern void peak_meter_draw_trig(int x, int y);
extern unsigned short peak_meter_range_min;
extern unsigned short peak_meter_range_max;
+#define DB_SCALE_SRC_VALUES_SIZE 12
+struct meter_scales{
+ /* buffered peak values */
+ int pm_peak_left;
+ int pm_peak_right;
+ /* if db_scale_valid is false the content of
+ db_scale_lcd_coord needs recalculation */
+ bool db_scale_valid;
+ /* contains the lcd x coordinates of the magical
+ scale values in db_scale_src_values */
+ int db_scale_lcd_coord[DB_SCALE_SRC_VALUES_SIZE];
+ int last_left;
+ int last_right;
+ /* peak hold timeouts */
+ long pm_peak_timeout_l;
+ long pm_peak_timeout_r;
+};
+extern void peak_meter_draw(struct screen *display, struct meter_scales *meter_scales,
+ int x, int y, int width, int height);
+extern void peak_meter_screen(struct screen *display, int x, int y, int height);
#endif /* __PEAKMETER_H__ */