00001
00002
00003
00004 class StChain;
00005 StChain *chain;
00006 int total=0;
00007
00008 void RunJetReader(int nevents=10,
00009 const char* file,
00010 const char* jetInFile,
00011 const char* dir = "",
00012 const char *filter = "")
00013 {
00014 cout <<"MuDst chain file:\t"<<file<<endl;
00015 cout <<"Jet tree file:\t"<<jetInFile<<endl;
00016
00017
00018 gROOT->Macro("loadMuDst.C");
00019 gSystem->Load("StTpcDb");
00020 gSystem->Load("StDetectorDbMaker");
00021 gSystem->Load("StDbUtilities");
00022 gSystem->Load("StMcEvent");
00023 gSystem->Load("StMcEventMaker");
00024 gSystem->Load("StDaqLib");
00025 gSystem->Load("StEmcRawMaker");
00026 gSystem->Load("StEmcADCtoEMaker");
00027 gSystem->Load("StEpcMaker");
00028 gSystem->Load("StEmcSimulatorMaker");
00029 gSystem->Load("StDbBroker");
00030 gSystem->Load("St_db_Maker");
00031 gSystem->Load("StEEmcUtil");
00032 gSystem->Load("StEEmcDbMaker");
00033 gSystem->Load("StSpinDbMaker");
00034 gSystem->Load("StEmcTriggerMaker");
00035 gSystem->Load("StMCAsymMaker");
00036 gSystem->Load("StJets");
00037 gSystem->Load("StJetSkimEvent");
00038 gSystem->Load("StTriggerUtilities");
00039 gSystem->Load("StJetEvent");
00040 gSystem->Load("libfastjet.so");
00041 gSystem->Load("StJetFinder");
00042 gSystem->Load("StJetMaker");
00043
00044 cout << " loading done " << endl;
00045
00046 double pi = TMath::Pi();
00047 cout << " loading done " << endl;
00048
00049 chain= new StChain("StChain");
00050 chain->SetDebug(1);
00051
00052
00053 StMuDebug::setLevel(1);
00054 StMuDstMaker* muDstMaker = new StMuDstMaker(0,0,dir,file,filter,10000000,"MuDst");
00055
00056
00057 StMuDbReader* db = StMuDbReader::instance();
00058
00059
00060
00061
00062
00063 St_db_Maker *dbMk = new St_db_Maker("StarDb", "MySQL:StarDb");
00064
00065
00066 StEmcADCtoEMaker *adc = new StEmcADCtoEMaker();
00067
00068
00069
00070
00071
00072
00073
00074
00075 StJetReader* jetReader = new StJetReader;
00076
00077 chain->Init();
00078
00079
00080 if (1) {
00081 jetReader->InitFile(jetInFile);
00082 }
00083
00084
00085 else {
00086 cout <<"\nGet Chain --------"<<endl;
00087 TChain* c = muDstMaker->chain();
00088
00089 cout <<"\nAdd Friend from file:\t"<<jetInFile<<endl;
00090 c->AddFriend("jet",jetInFile);
00091
00092 cout <<"\nInitTree()"<<endl;
00093 jetReader->InitTree(c);
00094 }
00095
00096 chain->PrintInfo();
00097
00098 for (Int_t iev=0;iev<nevents; iev++) {
00099 cout << "****************************************** " << endl;
00100 cout << "Working on eventNumber " << iev << endl;
00101 cout << "*************************1***************** " << endl;
00102 chain->Clear();
00103 int iret = chain->Make(iev);
00104 total++;
00105 if (iret) {
00106 cout << "Bad return code!" << endl;
00107 break;
00108 }
00109
00110 jetReader->exampleEventAna();
00111 }
00112 chain->Finish();
00113 cout << "****************************************** " << endl;
00114 cout << "total number of events " << total << endl;
00115 cout << "****************************************** " << endl;
00116 }
00117
00118
00119
00120
00121
00122
00123