00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef ROOT_TEveVSD
00013 #define ROOT_TEveVSD
00014
00015 #include "TEveUtil.h"
00016 #include "TEveVSDStructs.h"
00017 #include "TTree.h"
00018
00019 class TEveVSD : public TObject
00020 {
00021 TEveVSD(const TEveVSD&);
00022 TEveVSD& operator=(const TEveVSD&);
00023
00024 protected:
00025 TFile *fFile;
00026 TDirectory *fDirectory;
00027
00028 Int_t fBuffSize;
00029 Int_t fVerbose;
00030
00031 public:
00032 TTree* fTreeK;
00033 TTree* fTreeH;
00034 TTree* fTreeC;
00035 TTree* fTreeR;
00036 TTree* fTreeKK;
00037 TTree* fTreeV0;
00038 TTree* fTreeCC;
00039 TTree* fTreeGI;
00040
00041 TEveMCTrack fK, *fpK;
00042 TEveHit fH, *fpH;
00043 TEveCluster fC, *fpC;
00044 TEveRecTrack fR, *fpR;
00045 TEveRecKink fKK, *fpKK;
00046 TEveRecV0 fV0, *fpV0;
00047 TEveRecCascade fCC, *fpCC;
00048 TEveMCRecCrossRef fGI, *fpGI;
00049
00050 public:
00051 TEveVSD(const char* name="TEveVSD", const char* title="");
00052 virtual ~TEveVSD();
00053
00054 virtual void SetDirectory(TDirectory* dir);
00055
00056 virtual void CreateTrees();
00057 virtual void DeleteTrees();
00058
00059 virtual void CreateBranches();
00060 virtual void WriteTrees();
00061
00062 virtual void LoadTrees();
00063 virtual void SetBranchAddresses();
00064
00065 static void DisableTObjectStreamersForVSDStruct();
00066
00067 ClassDef(TEveVSD, 1);
00068 };
00069
00070 #endif