~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/plugin.h

Merged meta-info branch.

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
#include <drizzled/xid.h>
25
25
#include <drizzled/plugin/manifest.h>
26
26
#include <drizzled/plugin/module.h>
 
27
#include "drizzled/configmake.h"
27
28
 
28
29
 
29
30
class Session;
53
54
*/
54
55
 
55
56
 
56
 
#if defined(PANDORA_DYNAMIC_PLUGIN)
57
 
# define DRIZZLE_DECLARE_PLUGIN \
58
 
    drizzled::plugin::Manifest _drizzled_plugin_declaration_[]= {
59
 
#else
60
 
# define PANDORA_BUILTIN_NAME(x) builtin_ ## x ## _plugin
61
 
# define PANDORA_NAME(x) PANDORA_BUILTIN_NAME(x)
62
 
# define DRIZZLE_DECLARE_PLUGIN \
63
 
           drizzled::plugin::Manifest PANDORA_NAME(PANDORA_MODULE_NAME)[]= {
64
 
#endif
65
 
 
66
 
 
67
 
#define DRIZZLE_DECLARE_PLUGIN_END ,{0,0,0,0,PLUGIN_LICENSE_GPL,0,0,0,0,0}}
68
 
 
69
 
 
70
 
 
71
 
/*
72
 
  the following flags are valid for plugin_init()
73
 
*/
74
 
#define PLUGIN_INIT_SKIP_DYNAMIC_LOADING 1
75
 
#define PLUGIN_INIT_SKIP_PLUGIN_TABLE    2
76
 
#define PLUGIN_INIT_SKIP_INITIALIZATION  4
77
 
 
78
 
#define INITIAL_LEX_PLUGIN_LIST_SIZE    16
 
57
#define PANDORA_CPP_NAME(x) _drizzled_ ## x ## _plugin_
 
58
#define PANDORA_PLUGIN_NAME(x) PANDORA_CPP_NAME(x)
 
59
#define DRIZZLE_DECLARE_PLUGIN \
 
60
           drizzled::plugin::Manifest PANDORA_PLUGIN_NAME(PANDORA_MODULE_NAME)[]= {
 
61
 
 
62
 
 
63
#define DRIZZLE_DECLARE_PLUGIN_END ,{0, NULL,NULL,NULL,NULL,PLUGIN_LICENSE_GPL,NULL,NULL,NULL,NULL,NULL}}
 
64
#define DRIZZLE_PLUGIN(init,deinit,status,system) \
 
65
  DRIZZLE_DECLARE_PLUGIN \
 
66
  { \
 
67
    DRIZZLE_VERSION_ID, \
 
68
    STRINGIFY_ARG(PANDORA_MODULE_NAME), \
 
69
    STRINGIFY_ARG(PANDORA_MODULE_VERSION), \
 
70
    STRINGIFY_ARG(PANDORA_MODULE_AUTHOR), \
 
71
    STRINGIFY_ARG(PANDORA_MODULE_TITLE), \
 
72
    PANDORA_MODULE_LICENSE, \
 
73
    init, deinit, status, system, NULL \
 
74
  } \
 
75
  DRIZZLE_DECLARE_PLUGIN_END
 
76
 
79
77
 
80
78
/*
81
79
  declarations for SHOW STATUS support in plugins
391
389
extern "C" {
392
390
#endif
393
391
 
394
 
extern int plugin_init(drizzled::plugin::Registry &plugins,
395
 
                       int *argc, char **argv, int init_flags);
 
392
extern bool plugin_init(drizzled::plugin::Registry &registry,
 
393
                        int *argc, char **argv,
 
394
                        bool skip_init);
396
395
extern void plugin_shutdown(drizzled::plugin::Registry &plugins);
397
396
extern void my_print_help_inc_plugins(my_option *options);
398
397
extern bool plugin_is_ready(const LEX_STRING *name, int type);