00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef CHAMPION_LOADER_HH_
00014 # define CHAMPION_LOADER_HH_
00015
00016 # include "BaseCRules.hh"
00017 # include "ClientCx.hh"
00018
00023 class ChampionLoader
00024 {
00025 public:
00026 ChampionLoader();
00027
00028 void loadLibrary(int argc, char** argv, xml::XMLConfig& cfg);
00029
00030 int run(xml::XMLConfig& cfg,
00031 BaseCRules* base_rules,
00032 ClientCx* client_cx);
00033
00034 private:
00035 Library champion_;
00036
00037 typedef int (*run_func_t)(xml::XMLConfig*, Api*, ClientCx*);
00038 run_func_t run_fun_;
00039 Api* api_;
00040 };
00041
00042 #endif // !CHAMPION_LOADER_HH_