[beast/devel: 22/26] PLUGINS: compile BseFreeVerbCpp as C++ resident type
- From: Tim Janik <timj src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [beast/devel: 22/26] PLUGINS: compile BseFreeVerbCpp as C++ resident type
- Date: Tue, 18 Dec 2012 02:45:50 +0000 (UTC)
commit 2d15e4963e510d33bd6d9ec30a6a1ee80830bea3
Author: Tim Janik <timj gnu org>
Date: Tue Dec 18 03:14:01 2012 +0100
PLUGINS: compile BseFreeVerbCpp as C++ resident type
plugins/freeverb/Makefile.am | 2 +-
plugins/freeverb/{bsefreeverb.c => bsefreeverb.cc} | 40 +++++++++----------
plugins/freeverb/bsefreeverb.h | 2 +-
po/POTSCAN | 2 +-
4 files changed, 22 insertions(+), 24 deletions(-)
---
diff --git a/plugins/freeverb/Makefile.am b/plugins/freeverb/Makefile.am
index 99f3164..7d32ce5 100644
--- a/plugins/freeverb/Makefile.am
+++ b/plugins/freeverb/Makefile.am
@@ -9,7 +9,7 @@ INCLUDES += -I$(top_srcdir) -I. $(BSE_CFLAGS) -DG_LOG_DOMAIN="\"$(strip $(basena
# install plugins under:
plugindir = $(bseplugindir)
-freeverb_la_SOURCES = allpass.cpp comb.cpp revmodel.cpp bsefreeverbcpp.cpp bsefreeverb.c
+freeverb_la_SOURCES = allpass.cpp comb.cpp revmodel.cpp bsefreeverbcpp.cpp bsefreeverb.cc
freeverb_la_LDFLAGS = -module -avoid-version
freeverb_la_LIBADD = $(top_builddir)/bse/libbse.la $(BSE_LIBS) -lm
diff --git a/plugins/freeverb/bsefreeverb.c b/plugins/freeverb/bsefreeverb.cc
similarity index 89%
rename from plugins/freeverb/bsefreeverb.c
rename to plugins/freeverb/bsefreeverb.cc
index 4935700..982e2b1 100644
--- a/plugins/freeverb/bsefreeverb.c
+++ b/plugins/freeverb/bsefreeverb.cc
@@ -17,6 +17,7 @@
#include "bsefreeverb.h"
#include <bse/bseengine.h>
+#include <bse/bsecxxplugin.hh>
/* --- properties --- */
@@ -33,7 +34,7 @@ enum
/* --- prototypes --- */
static void bse_free_verb_init (BseFreeVerb *self);
-static void bse_free_verb_class_init (BseFreeVerbClass *class);
+static void bse_free_verb_class_init (BseFreeVerbClass *klass);
static void bse_free_verb_set_property (GObject *object,
guint param_id,
const GValue *value,
@@ -47,16 +48,12 @@ static void bse_free_verb_context_create (BseSource *source,
BseTrans *trans);
static void bse_free_verb_update_modules (BseFreeVerb *self);
-
-/* --- Export to BSE --- */
+// == Type Registration ==
#include "../icons/reverb.c"
-BSE_REGISTER_OBJECT (BseFreeVerb, BseSource, "/Modules/Filters/Free Verb", "",
- "BseFreeVerb - Free, studio-quality reverb (SOURCE CODE in the public domain) "
- "Written by Jezar at Dreampoint - http://www.dreampoint.co.uk",
- reverb_icon,
- bse_free_verb_class_init, NULL, bse_free_verb_init);
-BSE_DEFINE_EXPORTS ();
-
+BSE_RESIDENT_TYPE_DEF (BseFreeVerb, bse_free_verb, N_("Filters/Free Verb"),
+ "BseFreeVerb - Free, studio-quality reverb (SOURCE CODE in the public domain) "
+ "Written by Jezar at Dreampoint - http://www.dreampoint.co.uk",
+ reverb_icon);
/* --- variables --- */
static gpointer parent_class = NULL;
@@ -64,16 +61,16 @@ static gpointer parent_class = NULL;
/* --- functions --- */
static void
-bse_free_verb_class_init (BseFreeVerbClass *class)
+bse_free_verb_class_init (BseFreeVerbClass *klass)
{
- GObjectClass *gobject_class = G_OBJECT_CLASS (class);
- BseObjectClass *object_class = BSE_OBJECT_CLASS (class);
- BseSourceClass *source_class = BSE_SOURCE_CLASS (class);
- BseFreeVerbConstants *constants = &class->constants;
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+ BseObjectClass *object_class = BSE_OBJECT_CLASS (klass);
+ BseSourceClass *source_class = BSE_SOURCE_CLASS (klass);
+ BseFreeVerbConstants *constants = &klass->constants;
BseFreeVerbConfig defaults;
guint channel;
- parent_class = g_type_class_peek_parent (class);
+ parent_class = g_type_class_peek_parent (klass);
gobject_class->set_property = bse_free_verb_set_property;
gobject_class->get_property = bse_free_verb_get_property;
@@ -122,6 +119,7 @@ bse_free_verb_class_init (BseFreeVerbClass *class)
channel = bse_source_class_add_ichannel (source_class, "right-audio-in", _("Right Audio In"), _("Right Input"));
channel = bse_source_class_add_ochannel (source_class, "left-audio-out", _("Left Audio Out"), _("Left Output"));
channel = bse_source_class_add_ochannel (source_class, "right-audio-out", _("Right Audio Out"), _("Right Output"));
+ (void) channel;
}
static void
@@ -203,8 +201,8 @@ static void
free_verb_access (BseModule *module,
gpointer data)
{
- BseFreeVerbCpp *cpp = module->user_data;
- BseFreeVerbConfig *config = data;
+ BseFreeVerbCpp *cpp = (BseFreeVerbCpp*) module->user_data;
+ BseFreeVerbConfig *config = (BseFreeVerbConfig*) data;
/* this runs in the Gsl Engine threads */
bse_free_verb_cpp_configure (cpp, config);
@@ -228,7 +226,7 @@ static void
free_verb_process (BseModule *module,
guint n_values)
{
- BseFreeVerbCpp *cpp = module->user_data;
+ BseFreeVerbCpp *cpp = (BseFreeVerbCpp*) module->user_data;
const gfloat *ileft = BSE_MODULE_IBUFFER (module, BSE_FREE_VERB_ICHANNEL_LEFT);
const gfloat *iright = BSE_MODULE_IBUFFER (module, BSE_FREE_VERB_ICHANNEL_RIGHT);
gfloat *oleft = BSE_MODULE_OBUFFER (module, BSE_FREE_VERB_OCHANNEL_LEFT);
@@ -240,7 +238,7 @@ free_verb_process (BseModule *module,
static void
free_verb_reset (BseModule *module)
{
- BseFreeVerbCpp *cpp = module->user_data;
+ BseFreeVerbCpp *cpp = (BseFreeVerbCpp*) module->user_data;
BseFreeVerbConfig config;
bse_free_verb_cpp_restore_config (cpp, &config);
@@ -254,7 +252,7 @@ static void
free_verb_destroy (gpointer data,
const BseModuleClass *klass)
{
- BseFreeVerbCpp *cpp = data;
+ BseFreeVerbCpp *cpp = (BseFreeVerbCpp*) data;
bse_free_verb_cpp_destroy (cpp);
g_free (cpp);
diff --git a/plugins/freeverb/bsefreeverb.h b/plugins/freeverb/bsefreeverb.h
index f145635..52a6e4b 100644
--- a/plugins/freeverb/bsefreeverb.h
+++ b/plugins/freeverb/bsefreeverb.h
@@ -26,7 +26,7 @@
G_BEGIN_DECLS
/* --- type macros --- */
-#define BSE_TYPE_FREE_VERB (BSE_EXPORT_TYPE_ID (BseFreeVerb))
+#define BSE_TYPE_FREE_VERB (bse_free_verb_get_type())
#define BSE_FREE_VERB(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), BSE_TYPE_FREE_VERB, BseFreeVerb))
#define BSE_FREE_VERB_CLASS(class) (G_TYPE_CHECK_CLASS_CAST ((class), BSE_TYPE_FREE_VERB, BseFreeVerbClass))
#define BSE_IS_FREE_VERB(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), BSE_TYPE_FREE_VERB))
diff --git a/po/POTSCAN b/po/POTSCAN
index ed82cb5..3ffeb0f 100644
--- a/po/POTSCAN
+++ b/po/POTSCAN
@@ -136,7 +136,7 @@ plugins/davchorus.idl
plugins/davorgan.idl
plugins/davsyndrum.cc
plugins/davxtalstrings.cc
-plugins/freeverb/bsefreeverb.c
+plugins/freeverb/bsefreeverb.cc
plugins/standardguspatchenvelope.idl
plugins/standardsaturator.idl
sfi/sfidl-parser.hh
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]