41 void makeEEmcTreePart2and3_TSIU(
const Char_t *eemcTreePart1FileName =
"eemcTreeP1.root",
42 const Char_t *eemcTreePart2FileName =
"eemcTreeP2.root",
43 const Char_t *eemcTreePart3FileName =
"eemcTreeP3.root",
46 Int_t displayFreq = 100 ){
49 std::cout <<
"***** Loading libraries *****" << endl;
52 std::cout <<
"***** Done loading libraries *****" << endl;
53 std::cout <<
"***** Instanciating all the classes *****" << endl;
58 analysisChain =
new StChain(
"eemcAnalysisChain");
64 treeReaderPtr->
setTreeStatus( StEEmcTreeMaker_t::PART_1, StEEmcTreeMaker_t::READ, eemcTreePart1FileName );
65 treeReaderPtr->
setTreeStatus( StEEmcTreeMaker_t::PART_2, StEEmcTreeMaker_t::IGNORE,
"" );
66 treeReaderPtr->
setTreeStatus( StEEmcTreeMaker_t::PART_3, StEEmcTreeMaker_t::IGNORE,
"" );
67 treeReaderPtr->doSpinInfoIO( !isMC );
68 treeReaderPtr->doEvtHddrIO( 1 );
69 treeReaderPtr->setMaxNumEvents( neventsIn );
85 stripClusterFinderPtr->setNumSmoothIters( 10 );
86 stripClusterFinderPtr->setNumStripsPerSide( 3 );
87 stripClusterFinderPtr->setMinStripsPerCluster( 5 );
88 stripClusterFinderPtr->setSeedAbsThres( 0.002 );
89 stripClusterFinderPtr->setSeedRelThres( 0.0 );
90 stripClusterFinderPtr->setMinEnergyPerCluster( 0.003 );
97 energyApportionerPtr->setCheckTowerBits(0);
102 towerClusterFinderPtr,
103 stripClusterFinderPtr,
108 hitMakerPtr->doClusterPreShower1( 0 );
109 hitMakerPtr->doClusterPreShower2( 0 );
110 hitMakerPtr->doClusterPostShower( 0 );
125 treeWriterPtr->
setTreeStatus( StEEmcTreeMaker_t::PART_1, StEEmcTreeMaker_t::IGNORE,
"" );
126 treeWriterPtr->
setTreeStatus( StEEmcTreeMaker_t::PART_2, StEEmcTreeMaker_t::WRITE, eemcTreePart2FileName );
127 treeWriterPtr->
setTreeStatus( StEEmcTreeMaker_t::PART_3, StEEmcTreeMaker_t::WRITE, eemcTreePart3FileName );
128 treeWriterPtr->doSpinInfoIO( 0 );
129 treeWriterPtr->doEvtHddrIO( 0 );
130 treeWriterPtr->doMakePairs( 1 );
131 treeWriterPtr->setEEmcTreeReader( treeReaderPtr );
132 treeWriterPtr->setEEmcHitMkr( hitMakerPtr );
135 std::cout <<
"***** Done instanciating all the classes *****" << endl;
142 std::cout <<
"***** Initializing all makers in the analysis chain *****" << std::endl;
144 analysisChain->Init();
146 std::cout <<
"***** Initialization done *****" << std::endl;
159 for( nIn = 0; nIn < neventsIn && !ierr; ++nIn ){
162 analysisChain->
Clear();
165 ierr = analysisChain->
Make();
168 nhits += hitMakerPtr->getHitVecSize();
171 if( (nIn+1) % displayFreq == 0 )
172 std::cout <<
"***** Entries read " << nIn+1 <<
", total hits = " << nhits << endl;
175 std::cout <<
"***** Entries read " << nIn+1 <<
", total hits = " << nhits << endl;
177 if( ierr && ierr != 2 )
178 std::cout <<
"***** ERROR FLAG " << ierr << endl;
195 void loadEEmcTreeLibs(){
197 gROOT->Macro(
"loadMuDst.C");
200 gSystem->Load(
"StSpinDbMaker");
201 gSystem->Load(
"StEEmcUtil");
203 gSystem->Load(
"libSpectrum");
204 gSystem->Load(
"libMinuit");
206 gSystem->Load(
"StEEmcPoolEEmcTreeContainers");
207 gSystem->Load(
"StEEmcHitMaker");
208 gSystem->Load(
"StEEmcPointMap");
209 gSystem->Load(
"StEEmcTreeMaker");
virtual void Clear(Option_t *option="")
User defined functions.
void setTreeStatus(treeTypeEnum_t type, iostatus_t iostatus, const Char_t *fileName)
modifiers
void doClusterSMDStrips(Bool_t flag=1)
Set whether to cluster SMD strips.
void doClusterTowers(Bool_t flag=1)
modifiers
StEEmcTreeMaker_t(const Char_t *myName)
constructor