plugins: Implement a first version of the new plugin mechanismn.
[collectd.git] / src / configfile.h
index 7d89fad..fec1cf4 100644 (file)
@@ -1,6 +1,6 @@
 /**
  * collectd - src/configfile.h
- * Copyright (C) 2005  Florian octo Forster
+ * Copyright (C) 2005,2006  Florian octo Forster
  *
  * This program is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License as published by the
@@ -31,7 +31,7 @@
  *  `type'      Name of the plugin (must be the same as passed to
  *              `plugin_register'
  */
-void cf_unregister (char *type);
+void cf_unregister (const char *type);
 
 /*
  * DESCRIPTION
@@ -57,23 +57,24 @@ void cf_unregister (char *type);
  *  exists for each `type' at any time. This means that `cf_register' may be
  *  called multiple times, but only the last call will have an effect.
  */
-void cf_register (char *type,
-               int (*callback) (char *, char *),
-               char **keys, int keys_num);
+void cf_register (const char *type,
+               int (*callback) (const char *, const char *),
+               const char **keys, int keys_num);
 
 /*
  * DESCRIPTION
- *  `cf_get_mode_option' returns options from the <Mode> section(s).
+ *  `cf_get_option' returns various general options.
  *
  * PARAMETERS
  *  `key'       Name of the option to query.
+ *  `def'       Pointer to return as default value.
  *
  * RETURN VALUE
  *  The pointer returned is part of an internal structure and may not be
  *  changed. If the option is not found for whatever reason (wrong key, option
  *  not allowed for currently selected mode, ...) `NULL' is returned.
  */
-char *cf_get_mode_option (const char *key);
+char *cf_get_option (const char *key, char *def);
 
 /*
  * DESCRIPTION
@@ -82,8 +83,6 @@ char *cf_get_mode_option (const char *key);
  *  to load specific plugins, depending on the current mode of operation.
  *
  * PARAMETERS
- *  `argc'      Same as `argc' passed to `main'
- *  `argv'      Same as `argv' passed to `main'
  *  `filename'  An additional filename to look for. This function calls
  *              `lc_process' which already searches many standard locations..
  *              If set to NULL will use the `CONFIGFILE' define.
@@ -92,6 +91,6 @@ char *cf_get_mode_option (const char *key);
  *  Returns zero upon success and non-zero otherwise. A error-message will have
  *  been printed in this case.
  */
-int cf_read (int argc, char **argv, char *filename);
+int cf_read (char *filename);
 
 #endif /* defined(CONFIGFILE_H) */