00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _PLUGIN_SCHEDULAR_H_
00020 #define _PLUGIN_SCHEDULAR_H_
00021
00022 #include "nntpgrab_plugin_schedular.h"
00023
00024 typedef struct _plugin_schedular_exported_funcs {
00025 int (*get_version) (void);
00026
00027 void (*destroy) (void);
00028
00029 gboolean (*start) (void);
00030 gboolean (*stop) (const char *reason);
00031 gboolean (*get_state) (void);
00032
00033 gboolean (*add_task_to_queue) (const char *collection_name, const NNTPFile *file, char **errmsg);
00034 gboolean (*del_task_from_queue) (const char *collection_name, const char *subject, char **errmsg);
00035 gboolean (*restart_task) (const char *collection_name, const char *subject, char **errmsg);
00036 gboolean (*save_queue) (char **errmsg);
00037 void (*foreach_task) (GFunc foreach_func, gpointer data);
00038 gboolean (*move_task) (const char *collection_name_src, const char *subject_src, const char *collection_name_dest, int position_dest);
00039 gboolean (*move_collection) (const char *collection_name, int new_position);
00040 } PluginSchedularExportedFuncs;
00041
00042 typedef gboolean (*plugin_schedular_init_func) (PluginSchedularImportedFuncs funcs, char **errmsg);
00043
00044 #endif