X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fcanvas-waveview.h;h=81cf35910ee72ed6b04bdfbb6e85dab2eb03187d;hb=7d6db80042afbd4b092f11d58fac50c81c781eaa;hp=b3ec5bbe2234f4b410c1b51639cc15ea1d348ad3;hpb=a0663fbd278f4514ba26c4a4c0e2aa5ec2964dd9;p=ardour.git diff --git a/gtk2_ardour/canvas-waveview.h b/gtk2_ardour/canvas-waveview.h index b3ec5bbe22..81cf35910e 100644 --- a/gtk2_ardour/canvas-waveview.h +++ b/gtk2_ardour/canvas-waveview.h @@ -31,11 +31,12 @@ G_BEGIN_DECLS /* Wave viewer item for canvas. */ -#define GNOME_CANVAS_TYPE_CANVAS_WAVEVIEW (gnome_canvas_waveview_get_type ()) -#define GNOME_CANVAS_WAVEVIEW(obj) (GTK_CHECK_CAST ((obj), GNOME_CANVAS_TYPE_CANVAS_WAVEVIEW, GnomeCanvasWaveView)) -#define GNOME_CANVAS_WAVEVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GNOME_CANVAS_TYPE_CANVAS_WAVEVIEW, GnomeCanvasWaveViewClass)) -#define GNOME_CANVAS_IS_CANVAS_WAVEVIEW(obj) (GTK_CHECK_TYPE ((obj), GNOME_CANVAS_TYPE_CANVAS_WAVEVIEW)) -#define GNOME_CANVAS_IS_CANVAS_WAVEVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GNOME_CANVAS_TYPE_CANVAS_WAVEVIEW)) +#define GNOME_TYPE_CANVAS_WAVEVIEW (gnome_canvas_waveview_get_type ()) +#define GNOME_CANVAS_WAVEVIEW(obj) (GTK_CHECK_CAST ((obj), GNOME_TYPE_CANVAS_WAVEVIEW, GnomeCanvasWaveView)) +#define GNOME_CANVAS_WAVEVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GNOME_TYPE_CANVAS_WAVEVIEW, GnomeCanvasWaveViewClass)) +#define GNOME_IS_CANVAS_WAVEVIEW(obj) (GTK_CHECK_TYPE ((obj), GNOME_TYPE_CANVAS_WAVEVIEW)) +#define GNOME_IS_CANVAS_WAVEVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GNOME_TYPE_CANVAS_WAVEVIEW)) +#define GNOME_CANVAS_WAVEVIEW_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), GNOME_TYPE_CANVAS_WAVEVIEW, GnomeCanvasWaveViewClass)) typedef struct _GnomeCanvasWaveView GnomeCanvasWaveView; typedef struct _GnomeCanvasWaveViewClass GnomeCanvasWaveViewClass; @@ -75,14 +76,14 @@ struct _GnomeCanvasWaveView guint32 channel; void (*peak_function)(void*,gulong,gulong,gulong,gpointer,guint32,double); gulong (*length_function)(void *); - gulong (*sourcefile_length_function)(void*); + gulong (*sourcefile_length_function)(void*,double); void (*gain_curve_function)(void *arg, double start, double end, float* vector, guint32 veclen); void *gain_src; - /* x-axis: samples per canvas unit. */ + /** x-axis: samples per canvas unit. */ double samples_per_unit; - /* y-axis: amplitude_above_axis. + /** y-axis: amplitude_above_axis. * * the default is that an (scaled, normalized -1.0 ... +1.0) amplitude of 1.0 * corresponds to the top of the area assigned to the waveview. @@ -91,8 +92,8 @@ struct _GnomeCanvasWaveView * smaller values will decrease the vertical scale, moving peaks/troughs toward * the middle of the area assigned to the waveview. */ - double amplitude_above_axis; + double x; double y; double height; @@ -100,7 +101,8 @@ struct _GnomeCanvasWaveView uint32_t wave_color; char rectified; - + char logscaled; + /* These are updated by the update() routine to optimize the render() routine, which may be called several times after a single update(). @@ -120,7 +122,7 @@ struct _GnomeCanvasWaveViewClass { GnomeCanvasItemClass parent_class; }; -GtkType gnome_canvas_waveview_get_type (void); +GType gnome_canvas_waveview_get_type (void) G_GNUC_CONST; G_END_DECLS