diff options
Diffstat (limited to 'Gem/develop')
-rw-r--r-- | Gem/develop/include/Gem/Gem/Loaders.h | 14 | ||||
-rw-r--r-- | Gem/develop/include/Gem/Utils/nop.h | 29 |
2 files changed, 42 insertions, 1 deletions
diff --git a/Gem/develop/include/Gem/Gem/Loaders.h b/Gem/develop/include/Gem/Gem/Loaders.h index 2a3e1c0..ccc5769 100644 --- a/Gem/develop/include/Gem/Gem/Loaders.h +++ b/Gem/develop/include/Gem/Gem/Loaders.h @@ -18,8 +18,20 @@ LOG #include "Gem/RTE.h" extern "C" { - typedef int (*gem_loader_t)(t_canvas *canvas, char *classname); + /* search for a class <classname> in <path> + * if <path> is NULL, search all paths yourself + * Only on Pd>=0.47 will <path> have a value */ + typedef int (*gem_loader_t)(const t_canvas *canvas, const char *classname, const char *path); + /* register a loader that respects the path (any file-based loader) + * In Pd<0.47 this loader will be called with a path==NULL, and the loader needs to iterate + * over the paths on its own (e.g. using canvas_open()) + * In Pd>=0.47 this loader will only be called with path!=NULL + */ void gem_register_loader(gem_loader_t loader); + /* registers a loader that ignores the path (path will always be set to NULL) + * for Pd>=0.47 this loader will be called after all the path-accepting loaders + */ + void gem_register_loader_nopath(gem_loader_t loader); } #endif diff --git a/Gem/develop/include/Gem/Utils/nop.h b/Gem/develop/include/Gem/Utils/nop.h new file mode 100644 index 0000000..0be005b --- /dev/null +++ b/Gem/develop/include/Gem/Utils/nop.h @@ -0,0 +1,29 @@ +/*----------------------------------------------------------------- +LOG + GEM - Graphics Environment for Multimedia + + nop.h + - contains nop functions/macros + - part of GEM + + Copyright (c) 2016 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at + For information on usage and redistribution, and for a DISCLAIMER OF ALL + WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution. + +-----------------------------------------------------------------*/ + +#ifndef _INCLUDE__GEM_UTILS_NOP_H_ +#define _INCLUDE__GEM_UTILS_NOP_H_ + +#if __STDC_VERSION__ >= 199901L +# define nop(...) +#else +# define nop +#endif + +static inline void gem__nop_post(void) { ; } +static inline void gem__nop_post(const char*fmt, ...) { ; } +#define nop_post gem__nop_post + +#endif // for header file + |