Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TClassGenerator.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/base:$Id$
0002 // Author: Philippe Canal 24/06/2003
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2003, Rene Brun and Fons Rademakers, and al.       *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 #ifndef ROOT_TClassGenerator
0013 #define ROOT_TClassGenerator
0014 
0015 //////////////////////////////////////////////////////////////////////////
0016 //                                                                      //
0017 // TClassGenerator                                                      //
0018 //                                                                      //
0019 // Objects following this interface can be passed onto the TROOT object //
0020 // to implement a user customized way to create the TClass objects.     //
0021 //                                                                      //
0022 //////////////////////////////////////////////////////////////////////////
0023 
0024 #include "TObject.h"
0025 
0026 class TClass;
0027 
0028 class TClassGenerator : public TObject {
0029 
0030 protected:
0031    TClassGenerator() : TObject() { }
0032    virtual ~TClassGenerator() { }
0033 
0034 public:
0035    virtual TClass *GetClass(const char* classname, Bool_t load) = 0;
0036    virtual TClass *GetClass(const std::type_info& typeinfo, Bool_t load) = 0;
0037    virtual TClass *GetClass(const char* classname, Bool_t load, Bool_t silent);
0038    virtual TClass *GetClass(const std::type_info& typeinfo, Bool_t load, Bool_t silent);
0039 
0040    ClassDefOverride(TClassGenerator,1);  // interface for TClass generators
0041 };
0042 
0043 #endif