#ifndef ROOT_TBranchProxyClassDescriptor
#define ROOT_TBranchProxyClassDescriptor
#ifndef ROOT_TList
#include "TList.h"
#endif
#ifndef ROOT_TNamed
#include "TNamed.h"
#endif
class TTree;
class TVirtualStreamerInfo;
namespace ROOT {
class TBranchProxyDescriptor;
class TBranchProxyClassDescriptor : public TNamed {
public:
enum ELocation { kOut=0, kClones, kSTL, kInsideClones, kInsideSTL };
private:
TList fListOfSubProxies;
TList fListOfBaseProxies;
ELocation fIsClones;
TString fContainerName;
Bool_t fIsLeafList;
UInt_t fSplitLevel;
TString fRawSymbol;
TString fBranchName;
TString fSubBranchPrefix;
TVirtualStreamerInfo *fInfo;
UInt_t fMaxDatamemberType;
void NameToSymbol();
TBranchProxyClassDescriptor(const TBranchProxyClassDescriptor &b) :TNamed(b){;}
TBranchProxyClassDescriptor& operator=(const TBranchProxyClassDescriptor&) {return *this;}
public:
TBranchProxyClassDescriptor(const char *type, TVirtualStreamerInfo *info, const char *branchname,
ELocation isclones, UInt_t splitlevel, const TString &containerName);
TBranchProxyClassDescriptor(const char *branchname);
TBranchProxyClassDescriptor(const char *type, TVirtualStreamerInfo *info, const char *branchname,
const char *branchPrefix, ELocation isclones,
UInt_t splitlevel, const TString &containerName);
const char* GetBranchName() const;
const char* GetSubBranchPrefix() const;
const char* GetRawSymbol() const;
TVirtualStreamerInfo *GetInfo() const { return fInfo; }
UInt_t GetSplitLevel() const;
virtual Bool_t IsEquivalent(const TBranchProxyClassDescriptor* other);
void AddDescriptor(TBranchProxyDescriptor *desc, Bool_t isBase);
Bool_t IsLoaded() const;
static Bool_t IsLoaded(const char*);
Bool_t IsClones() const;
Bool_t IsSTL() const;
ELocation GetIsClones() const;
TString GetContainerName() const;
void OutputDecl(FILE *hf, int offset, UInt_t );
ClassDef(TBranchProxyClassDescriptor,0);
};
}
#endif
TBranchProxyClassDescriptor.h:1 TBranchProxyClassDescriptor.h:2 TBranchProxyClassDescriptor.h:3 TBranchProxyClassDescriptor.h:4 TBranchProxyClassDescriptor.h:5 TBranchProxyClassDescriptor.h:6 TBranchProxyClassDescriptor.h:7 TBranchProxyClassDescriptor.h:8 TBranchProxyClassDescriptor.h:9 TBranchProxyClassDescriptor.h:10 TBranchProxyClassDescriptor.h:11 TBranchProxyClassDescriptor.h:12 TBranchProxyClassDescriptor.h:13 TBranchProxyClassDescriptor.h:14 TBranchProxyClassDescriptor.h:15 TBranchProxyClassDescriptor.h:16 TBranchProxyClassDescriptor.h:17 TBranchProxyClassDescriptor.h:18 TBranchProxyClassDescriptor.h:19 TBranchProxyClassDescriptor.h:20 TBranchProxyClassDescriptor.h:21 TBranchProxyClassDescriptor.h:22 TBranchProxyClassDescriptor.h:23 TBranchProxyClassDescriptor.h:24 TBranchProxyClassDescriptor.h:25 TBranchProxyClassDescriptor.h:26 TBranchProxyClassDescriptor.h:27 TBranchProxyClassDescriptor.h:28 TBranchProxyClassDescriptor.h:29 TBranchProxyClassDescriptor.h:30 TBranchProxyClassDescriptor.h:31 TBranchProxyClassDescriptor.h:32 TBranchProxyClassDescriptor.h:33 TBranchProxyClassDescriptor.h:34 TBranchProxyClassDescriptor.h:35 TBranchProxyClassDescriptor.h:36 TBranchProxyClassDescriptor.h:37 TBranchProxyClassDescriptor.h:38 TBranchProxyClassDescriptor.h:39 TBranchProxyClassDescriptor.h:40 TBranchProxyClassDescriptor.h:41 TBranchProxyClassDescriptor.h:42 TBranchProxyClassDescriptor.h:43 TBranchProxyClassDescriptor.h:44 TBranchProxyClassDescriptor.h:45 TBranchProxyClassDescriptor.h:46 TBranchProxyClassDescriptor.h:47 TBranchProxyClassDescriptor.h:48 TBranchProxyClassDescriptor.h:49 TBranchProxyClassDescriptor.h:50 TBranchProxyClassDescriptor.h:51 TBranchProxyClassDescriptor.h:52 TBranchProxyClassDescriptor.h:53 TBranchProxyClassDescriptor.h:54 TBranchProxyClassDescriptor.h:55 TBranchProxyClassDescriptor.h:56 TBranchProxyClassDescriptor.h:57 TBranchProxyClassDescriptor.h:58 TBranchProxyClassDescriptor.h:59 TBranchProxyClassDescriptor.h:60 TBranchProxyClassDescriptor.h:61 TBranchProxyClassDescriptor.h:62 TBranchProxyClassDescriptor.h:63 TBranchProxyClassDescriptor.h:64 TBranchProxyClassDescriptor.h:65 TBranchProxyClassDescriptor.h:66 TBranchProxyClassDescriptor.h:67 TBranchProxyClassDescriptor.h:68 TBranchProxyClassDescriptor.h:69 TBranchProxyClassDescriptor.h:70 TBranchProxyClassDescriptor.h:71 TBranchProxyClassDescriptor.h:72 TBranchProxyClassDescriptor.h:73 TBranchProxyClassDescriptor.h:74 TBranchProxyClassDescriptor.h:75 TBranchProxyClassDescriptor.h:76 TBranchProxyClassDescriptor.h:77 TBranchProxyClassDescriptor.h:78 TBranchProxyClassDescriptor.h:79 TBranchProxyClassDescriptor.h:80 TBranchProxyClassDescriptor.h:81 TBranchProxyClassDescriptor.h:82 TBranchProxyClassDescriptor.h:83 TBranchProxyClassDescriptor.h:84 TBranchProxyClassDescriptor.h:85 TBranchProxyClassDescriptor.h:86 TBranchProxyClassDescriptor.h:87 TBranchProxyClassDescriptor.h:88 TBranchProxyClassDescriptor.h:89