diff options
author | Travis CI <zmoelnig@travis-ci.umlaeute.mur.at> | 2019-02-06 20:32:12 +0000 |
---|---|---|
committer | Travis CI <zmoelnig@travis-ci.umlaeute.mur.at> | 2019-02-06 20:32:12 +0000 |
commit | 2d8e19d10be55c6c7f99bb306bec3507b353f485 (patch) | |
tree | 497ffaf749b49c408dd5ea61d90321eb498ad551 /Gem/develop/include | |
parent | 60d010ba6df679207628fa088e1b8f890ba2b697 (diff) |
Gem 095a8d03d64b3263805ecbbcca479581b8c246a7 osx/i386
built 'master:095a8d03d64b3263805ecbbcca479581b8c246a7' for osx/i386
Diffstat (limited to 'Gem/develop/include')
-rw-r--r-- | Gem/develop/include/Gem/Base/CPPExtern.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/Gem/develop/include/Gem/Base/CPPExtern.h b/Gem/develop/include/Gem/Base/CPPExtern.h index de320f9..e9190b7 100644 --- a/Gem/develop/include/Gem/Base/CPPExtern.h +++ b/Gem/develop/include/Gem/Base/CPPExtern.h @@ -332,21 +332,19 @@ static void obj_setupCallback(t_class *classPtr); // (registering the class with pd) // a static copy of this class is created at runtime, to actually do the setup-call /////////////////////////////////////////////////////////////////////////////// +typedef void (*t_class_setup)(void); +extern "C" { GEM_EXTERN void gem_register_class_setup(const char*name, t_class_setup); } + #ifdef NO_AUTO_REGISTER_CLASS // if NO_AUTO_REGISTER_CLASS is defined, we will not register the class # define AUTO_REGISTER_CLASS(NEW_CLASS) \ static int NEW_CLASS ## _dummyinstance #else // for debugging we can show the which classes are auto-registering -# if 0 -# define POST_AUTOREGISTER(NEW_CLASS) post("auto-registering: "#NEW_CLASS) -# else -# define POST_AUTOREGISTER(NEW_CLASS) -# endif -# define AUTO_REGISTER_CLASS(NEW_CLASS) \ +# define AUTO_REGISTER_CLASS(NEW_CLASS) \ class NEW_CLASS ## _cppclass { \ public: \ - NEW_CLASS ## _cppclass(void) {POST_AUTOREGISTER(NEW_CLASS); NEW_CLASS ## _setup(); } \ + NEW_CLASS ## _cppclass(void) {gem_register_class_setup(#NEW_CLASS, & NEW_CLASS ## _setup); } \ }; \ static NEW_CLASS ## _cppclass NEW_CLASS ## _instance #endif |