00001 #ifndef LibraryLoader_RootAutoLibraryLoader_h 00002 #define LibraryLoader_RootAutoLibraryLoader_h 00003 00011 #include "TClassGenerator.h" 00012 #include "RVersion.h" 00013 00014 #include <typeinfo> 00015 00016 class DummyClassToStopCompilerWarning; 00017 00018 namespace edm { 00019 class RootAutoLibraryLoader : public TClassGenerator { 00020 friend class DummyClassToStopCompilerWarning; 00021 public: 00023 virtual TClass *GetClass(char const* classname, Bool_t load); 00025 virtual TClass *GetClass(type_info const& typeinfo, Bool_t load); 00027 //ClassDef(RootAutoLibraryLoader,1); 00029 static void enable(); 00030 00032 static void loadAll(); 00033 00034 private: 00035 char const* classNameAttemptingToLoad_; 00036 RootAutoLibraryLoader(); 00037 RootAutoLibraryLoader(RootAutoLibraryLoader const&); // stop default 00038 RootAutoLibraryLoader const& operator=(RootAutoLibraryLoader const&); // stop default 00039 #if ROOT_VERSION_CODE >= ROOT_VERSION(5,27,6) 00040 bool isInitializingCintex_; 00041 #endif 00042 }; 00043 00044 } 00045 #endif