00001
00002
00003
00004 void exampleEmc(const Char_t *infile="/star/data24/reco/production_dAu2008/ReversedFullField/P08ic/2008/026/9026032/st_physics_adc_9026032_raw_1070010.MuDst.root",const Int_t n_event=100) {
00005 gROOT->Macro("loadMuDst.C");
00006
00007
00008 gSystem->Load("StDbLib.so");
00009 gSystem->Load("StDbBroker.so");
00010 gSystem->Load("St_db_Maker");
00011
00012
00013 gSystem->Load("StDaqLib");
00014 gSystem->Load("StEmcRawMaker");
00015 gSystem->Load("StEmcADCtoEMaker");
00016 gSystem->Load("StPreEclMaker");
00017 gSystem->Load("StEpcMaker");
00018
00019 StChain *chain=new StChain;
00020 StMuDstMaker *mudst_mk=new StMuDstMaker(0,0,"",infile,"",999);
00021
00022
00023 St_db_Maker *db1 = new St_db_Maker("db","$HOME/StarDb","MySQL:StarDb","$STAR/StarDb");
00024
00025
00026 StEmcADCtoEMaker *adc_to_e=new StEmcADCtoEMaker();
00027 adc_to_e->setPrint(kFALSE);
00028
00029 StPreEclMaker *pre_ecl=new StPreEclMaker();
00030 pre_ecl->setPrint(kFALSE);
00031 StEpcMaker *epc=new StEpcMaker();
00032 epc->setPrint(kFALSE);
00033
00034 chain->Init();
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051 Int_t i_event=0;
00052 while (i_event < n_event && chain->Make() == kStOk) {
00053
00054 StEmcCollection *emcCollection = mudst_mk->muDst()->emcCollection();
00055
00056 if (emcCollection) {
00057 cout << emcCollection->barrelPoints().size() << " points in barrel" << endl;
00058
00059 StEmcDetector *barrel = emcCollection->detector(kBarrelEmcTowerId);
00060 if (barrel->cluster())
00061 cout << barrel->cluster()->clusters().size() << " barrel tower clusters" << endl;
00062 StEmcDetector *smde = emcCollection->detector(kBarrelSmdEtaStripId);
00063 if (barrel->cluster())
00064 cout << smde->cluster()->clusters().size() << " smd eta clusters" << endl;
00065 StEmcDetector *smdp = emcCollection->detector(kBarrelSmdPhiStripId);
00066 if (barrel->cluster())
00067 cout << smdp->cluster()->clusters().size() << " smd phi clusters" << endl;
00068 }
00069 else {
00070 cout << "No emc collection!" << endl;
00071 }
00072
00073 i_event++;
00074 chain->Clear();
00075 }
00076 }