]>
Commit | Line | Data |
---|---|---|
08edbb90 | 1 | #ifndef ALICLASSINFO_H |
2 | #define ALICLASSINFO_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | /* $Id$ */ | |
8 | /////////////////////////////////////////////////////////////////////////////// | |
9 | // // | |
10 | // AliClassInfo // | |
11 | // // | |
12 | // Defined to make unified interface to primitive types (in Root described by// | |
13 | // TDataType) and TClass. // | |
14 | // // | |
15 | // Origin: Marian Ivanov, Uni. of Bratislava, ivanov@fmph.uniba.sk // | |
16 | /////////////////////////////////////////////////////////////////////////////// | |
17 | ||
18 | ||
19 | #include "TNamed.h" | |
20 | class TDataType; | |
21 | ||
22 | ||
23 | ||
24 | class AliClassInfo : public TNamed { | |
25 | public: | |
783ce8a7 | 26 | AliClassInfo() : fSize(0) {} |
08edbb90 | 27 | virtual ~AliClassInfo(){;} |
88cb7938 | 28 | virtual void CTORBuffer(void * /*pointer*/, UInt_t /*size=1*/){;} |
08edbb90 | 29 | // {return (*ctorbuffer)(p,size);} |
88cb7938 | 30 | virtual void DTORBuffer(void * /*pointer*/, UInt_t /*size=1*/){;} |
08edbb90 | 31 | //{return (*dtorbuffer)(p,size);} |
88cb7938 | 32 | virtual void StreamBuffer(TBuffer& /*b*/, |
33 | const void */*object*/, UInt_t /*size*/){;} | |
08edbb90 | 34 | //{return (*streamb)(b,object,size);} |
88cb7938 | 35 | virtual void ObjectDump(void */*p*/){;} |
08edbb90 | 36 | virtual const char * GetClassName(){ return 0;} |
37 | virtual TClass * GetClass(){return 0;} | |
38 | virtual TDataType * GetDataType(){return 0;} | |
80b7101b | 39 | UInt_t Size(){return fSize;} |
08edbb90 | 40 | static AliClassInfo * FindClassInfo(const char * name); |
41 | static AliClassInfo * GenerClassInfo(const char * clname); | |
42 | static void GenerClassInfoCode(const char * clname, Bool_t load, | |
43 | const char *incpath, const char *outfile); | |
44 | const TList & GetListOfClass(){return fgList;} | |
45 | protected: | |
46 | static Bool_t GenerClassInterface(const char * clname, FILE * fout); | |
47 | static TList fgList; // list of loaded class | |
48 | UInt_t fSize; //size of object | |
49 | ClassDef(AliClassInfo,1) | |
50 | }; | |
51 | ||
52 | ||
53 | #endif //ALICLASSINFO_H | |
54 |