00001 class StChain;
00002 class St2011WMaker;
00003
00004 StChain *chain = 0;
00005 St2011WMaker *wTreeMk = 0;
00006 TString jetTreeDir = "/star/institutions/iucf/stevens4/wAnalysis/jetTreeSL10j12.22.10/";
00007
00008 void readWtree( const Char_t *fileList="R10103042.lis" )
00009 {
00010
00011
00012 gROOT -> LoadMacro("$STAR/StRoot/StMuDSTMaker/COMMON/macros/loadSharedLibraries.C");
00013 loadSharedLibraries();
00014 assert( !gSystem->Load("StEEmcUtil"));
00015 assert( !gSystem->Load("StWalgo2011"));
00016
00017
00018 assert( !gSystem->Load("StDetectorDbMaker"));
00019
00020
00021 gSystem->Load("StJets");
00022
00023
00024 chain = new StChain("chain");
00025 TObjArray* HList=new TObjArray;
00026
00027
00028 wTreeMk = new St2011WMaker();
00029 wTreeMk->setJetTreeBranch("ConeJets12_100","ConeJets12_100_noEEMC");
00030 wTreeMk->setHList(HList);
00031
00032
00033 chainFiles(fileList);
00034
00035 chain->ls(3);
00036 chain->Init();
00037
00038 Int_t nevents = wTreeMk->getNumberOfEvents();
00039
00040 Int_t stat = 0; Int_t event = 0;
00041 while ( !stat )
00042 {
00043 if ( nevents>=0 )
00044 if ( event>=nevents ) break;
00045 chain -> Clear();
00046 stat = chain->Make();
00047 event++;
00048 }
00049
00050 TString outFile=fileList;
00051 outFile.ReplaceAll(".lis",".root");
00052 TFile *outF=new TFile(outFile,"RECREATE");
00053 if(outF->IsOpen()){
00054 HList->Write();
00055 cout<<endl<<" Histo saved -->"<<outFile<<endl;
00056 }
00057 else
00058 cout<<endl<<" Couldn't open file "<<outFile<<endl;
00059
00060 delete outF;
00061
00062
00063 }
00064
00065
00066 void chainFiles(const Char_t *fileList)
00067 {
00068
00069 cout << "chaining files from list: " << fileList << endl;
00070
00071 ifstream f(fileList);
00072 char str[200];
00073 while (f >> str) {
00074 TString name=str;
00075 if ( name.Contains("root") )
00076 wTreeMk->chainFile(name);
00077
00078
00079 TString jetName=jetTreeDir;
00080 jetName+=name.ReplaceAll("trees/","jets_");
00081 jetName.ReplaceAll(".wana.tree","");
00082 wTreeMk->chainJetFile(jetName);
00083 }
00084
00085 }
00086