00001
00002
00003
00004
00005
00006
00007 class StChain;
00008 class StMuTrack;
00009 class StMuDstMaker;
00010 class StEventInfo;
00011
00012 class EEmcTower;
00013 class EEmcTTMatch;
00014 class EEmcTTMMaker;
00015
00016 StChain *chain = 0;
00017 EEmcTTMMaker *ttmMk = 0;
00018 StMuDstMaker *muDstMk= 0;
00019
00020 void
00021 ttm
00022 (
00023 char* inpDir = "",
00024 char* inpFile = "ttm.lis",
00025 char* outFile = "ttm.ndst.root",
00026 Int_t nFiles = 150,
00027 Int_t nEvents = -1
00028 )
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 {
00039
00040 gROOT->LoadMacro("$STAR/StRoot/StMuDSTMaker/COMMON/macros/loadSharedLibraries.C");
00041 loadSharedLibraries();
00042
00043 gSystem->Load("libmysqlclient");
00044 gSystem->Load("StDbLib");
00045 gSystem->Load("StDbBroker");
00046 gSystem->Load("St_db_Maker");
00047
00048 gSystem->Load("StEEmcUtil");
00049 gSystem->Load("StEEmcDbMaker");
00050 gSystem->Load("StEEmcPoolTTM");
00051
00052
00053
00054
00055
00056
00057
00058 chain = new StChain("StChain");
00059
00060
00061 muDstMk = new StMuDstMaker(0,0,inpDir,inpFile,"",nFiles);
00062 StMuDbReader *db = StMuDbReader::instance();
00063 St_db_Maker *dbMk = new St_db_Maker("StarDb", "MySQL:StarDb");
00064 StEEmcDbMaker *eemcDbMk = new StEEmcDbMaker("eemcDb");
00065
00066
00067
00068 ttmMk = new EEmcTTMMaker ("TTM",muDstMk,eemcDbMk);
00069 ttmMk->SetFileName(outFile);
00070
00071 ttmMk->SetMaxCTBSum(1000);
00072 ttmMk->SetMinTrackLength(20.0);
00073 ttmMk->SetMinTrackHits(5);
00074 ttmMk->SetMinTrackPt(0.5);
00075 ttmMk->SetMinTrackEta(0.7);
00076 ttmMk->SetMaxTrackEta(2.2);
00077 ttmMk->SetDeltaEtaCut(0.7);
00078 ttmMk->SetDeltaPhiCut(0.7);
00079 ttmMk->Summary(cout);
00080
00081 StMuDebug::setLevel(0);
00082 chain->Init();
00083 chain->ls(3);
00084
00085
00086 StEEmcDb *eemcDb = (StEEmcDb*)chain->GetDataSet("StEEmcDb");
00087 eemcDb->setPreferedFlavor("onlped","eemcPMTped");
00088
00089
00090 int stat = 0;
00091 int event= 0;
00092 while(++event<=nEvents || nEvents<0) {
00093 stat=chain->Make();
00094
00095
00096 if( stat==2 || stat==4) break;
00097 if( stat!=0 ) continue;
00098 if(event%10 == 0 ) {
00099 cerr << "event " << event << " \r";
00100 cerr.flush();
00101 }
00102 }
00103 cerr << endl;
00104 ttmMk->Summary(cout);
00105 }
00106
00107