00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef __USERPLUGIN_H_
00011 #define __USERPLUGIN_H_
00012
00013 #include <Plugin.h>
00014 #include <Config.h>
00015 #include <Error.h>
00016
00017
00018 using namespace std;
00019
00020 class StrongroomCore;
00021
00025 class UserPlugin : public Plugin
00026 {
00027 public:
00031 UserPlugin( const Config &cfg );
00032
00036 virtual ~UserPlugin() = 0;
00037
00043 virtual CoreError attachCore( StrongroomCore *core );
00044
00050 virtual CoreError run() = 0;
00051
00055 virtual void shutdown() = 0;
00056
00057 protected:
00059 StrongroomCore *core;
00060 };
00061
00062 #endif