BOSS 6.6.4.p01
BESIII Offline Software System
Loading...
Searching...
No Matches
RecEmcShower Class Reference

#include <RecEmcShower.h>

+ Inheritance diagram for RecEmcShower:

Public Member Functions

virtual const CLID & clID () const
 
 RecEmcShower ()
 
 ~RecEmcShower ()
 
 RecEmcShower (const DstEmcShower &aShower)
 
RecEmcShoweroperator= (const DstEmcShower &aShower)
 
bool operator< (const RecEmcShower &aShower) const
 
bool operator> (const RecEmcShower &aShower) const
 
void Clear ()
 
bool TofShower () const
 
void TofShower (bool tof)
 
RecEmcID getShowerId () const
 
RecEmcID ShowerId (RecEmcID id)
 
RecEmcID getClusterId () const
 
void ClusterId (const RecEmcID id)
 
RecEmcClustergetCluster () const
 
void Cluster (RecEmcCluster *pCluster)
 
RecEmcIDVector getCellId3x3 () const
 
void CellId3x3 (RecEmcIDVector &id3x3)
 
RecEmcIDVector getCellId5x5 () const
 
void CellId5x5 (RecEmcIDVector &id5x5)
 
RecEmcFractionMap::const_iterator Begin () const
 
RecEmcFractionMap::const_iterator End () const
 
RecEmcFractionMap::const_iterator Find (const RecEmcID &CellId) const
 
void Insert (const RecEmcFraction &aFraction)
 
void Erase (const RecEmcFraction &aFraction)
 
void Dump () const
 
unsigned int getSize () const
 
RecEmcFractionMap getFractionMap () const
 
RecEmcFractionMap getFractionMap3x3 () const
 
RecEmcFractionMap getFractionMap5x5 () const
 
RecEmcEnergy getEAll () const
 
RecEmcEnergy EAll (RecEmcEnergy e)
 
RecEmcEnergy getELepton () const
 
RecEmcEnergy ELepton (RecEmcEnergy e)
 
RecEmcEnergy getETof2x1 () const
 
RecEmcEnergy ETof2x1 (RecEmcEnergy e)
 
RecEmcEnergy getETof2x3 () const
 
RecEmcEnergy ETof2x3 (RecEmcEnergy e)
 
RecEmcID NearestSeed () const
 
RecEmcID NearestSeed (const RecEmcID &ns)
 
int ThetaGap () const
 
int ThetaGap (int ThetaGap)
 
int PhiGap () const
 
int PhiGap (int PhiGap)
 
- Public Member Functions inherited from DstEmcShower
 DstEmcShower ()
 
virtual ~DstEmcShower ()
 
virtual const CLID & clID () const
 
int trackId () const
 
int numHits () const
 
int status () const
 
int cellId () const
 
int module () const
 
HepPoint3D position () const
 
double x () const
 
double y () const
 
double z () const
 
double theta () const
 
double phi () const
 
double dx () const
 
double dy () const
 
double dz () const
 
double dtheta () const
 
double dphi () const
 
double energy () const
 
double dE () const
 
double eSeed () const
 
double e3x3 () const
 
double e5x5 () const
 
double time () const
 
double secondMoment () const
 
double latMoment () const
 
double a20Moment () const
 
double a42Moment () const
 
HepSymMatrix errorMatrix () const
 
void setTrackId (int trackId)
 
void setNumHits (int hit)
 
void setStatus (int st)
 
void setCellId (int id)
 
void setModule (int mod)
 
void setPosition (const HepPoint3D &pos)
 
void setEnergy (double e)
 
void setDE (double de)
 
void setDtheta (double dt)
 
void setDphi (double dpi)
 
void setESeed (double eSeed)
 
void setE3x3 (double e3x3)
 
void setE5x5 (double e5x5)
 
void setTime (double time)
 
void setSecondMoment (double secondMoment)
 
void setLatMoment (double latMoment)
 
void setA20Moment (double a20Moment)
 
void setA42Moment (double a42Moment)
 
void setErrorMatrix (const HepSymMatrix &error)
 

Static Public Member Functions

static const CLID & classID ()
 
- Static Public Member Functions inherited from DstEmcShower
static const CLID & classID ()
 

Protected Attributes

bool fTofShower
 
RecEmcID fShowerId
 
RecEmcID fClusterId
 
RecEmcClusterfCluster
 
RecEmcIDVector fCellId3x3
 
RecEmcIDVector fCellId5x5
 
RecEmcFractionMap fFractionMap
 
RecEmcEnergy fEAll
 
RecEmcEnergy fELepton
 
RecEmcEnergy fETof2x1
 
RecEmcEnergy fETof2x3
 
RecEmcID fNearestSeed
 
int fThetaGap
 
int fPhiGap
 

Detailed Description

Definition at line 21 of file RecEmcShower.h.

Constructor & Destructor Documentation

◆ RecEmcShower() [1/2]

RecEmcShower::RecEmcShower ( )

Definition at line 12 of file RecEmcShower.cxx.

13{
14 Clear();
15}

◆ ~RecEmcShower()

RecEmcShower::~RecEmcShower ( )

Definition at line 17 of file RecEmcShower.cxx.

18{
19 //Clear();
20}

◆ RecEmcShower() [2/2]

RecEmcShower::RecEmcShower ( const DstEmcShower aShower)

Definition at line 23 of file RecEmcShower.cxx.

24 :DstEmcShower(aShower)
25{
26 Clear();
27 fShowerId=RecEmcID(aShower.cellId());
28}
Identifier RecEmcID
int cellId() const
Definition: DstEmcShower.h:32
RecEmcID fShowerId
Definition: RecEmcShower.h:119

Member Function Documentation

◆ Begin()

RecEmcFractionMap::const_iterator RecEmcShower::Begin ( ) const

Definition at line 131 of file RecEmcShower.cxx.

132{
133 return fFractionMap.begin();
134}
RecEmcFractionMap fFractionMap
Definition: RecEmcShower.h:128

Referenced by EmcRecShowerEnergy::Energy(), operator<<(), EmcRecShowerPosLin::Position(), and EmcRecShowerPosLog::Position().

◆ CellId3x3()

void RecEmcShower::CellId3x3 ( RecEmcIDVector id3x3)

Definition at line 119 of file RecEmcShower.cxx.

120{
121 fCellId3x3.clear();
122 fCellId3x3=id3x3;
123}
RecEmcIDVector fCellId3x3
Definition: RecEmcShower.h:124

Referenced by EmcRecShowerEnergy::Energy(), and RecEmcShowerCnv::TObjectToDataObject().

◆ CellId5x5()

void RecEmcShower::CellId5x5 ( RecEmcIDVector id5x5)

Definition at line 125 of file RecEmcShower.cxx.

126{
127 fCellId5x5.clear();
128 fCellId5x5=id5x5;
129}
RecEmcIDVector fCellId5x5
Definition: RecEmcShower.h:126

Referenced by EmcRecShowerEnergy::Energy(), and RecEmcShowerCnv::TObjectToDataObject().

◆ classID()

static const CLID & RecEmcShower::classID ( )
inlinestatic

Definition at line 26 of file RecEmcShower.h.

26{ return CLID_RecEmcShower; }
const CLID & CLID_RecEmcShower
Definition: EventModel.cxx:310

Referenced by clID().

◆ Clear()

void RecEmcShower::Clear ( )

Definition at line 79 of file RecEmcShower.cxx.

80{
83 fCellId3x3.clear();
84 fCellId5x5.clear();
85 fFractionMap.clear();
86 //
87 fCluster=NULL;
88 fTofShower=false;
89 fEAll=0;
90 fELepton=0;
91 fETof2x1=0;
92 fETof2x3=0;
93 //
94 //HepPoint3D o(0,0,0);
95 //fPosition=o;
96 //
98 fThetaGap=0;
99 fPhiGap=0;
100}
void clear()
Reset to invalid state.
Definition: Identifier.h:152
RecEmcEnergy fETof2x1
Definition: RecEmcShower.h:146
RecEmcCluster * fCluster
Definition: RecEmcShower.h:122
RecEmcEnergy fETof2x3
Definition: RecEmcShower.h:148
RecEmcID fClusterId
Definition: RecEmcShower.h:121
RecEmcEnergy fEAll
Definition: RecEmcShower.h:141
RecEmcEnergy fELepton
Definition: RecEmcShower.h:143
RecEmcID fNearestSeed
Definition: RecEmcShower.h:155

Referenced by EmcRecFastCluster2Shower::Convert(), Erase(), operator=(), RecEmcShower(), and EmcRecSplitWeighted::Split().

◆ clID()

virtual const CLID & RecEmcShower::clID ( ) const
inlinevirtual

Reimplemented from DstEmcShower.

Definition at line 25 of file RecEmcShower.h.

25{ return RecEmcShower::classID();}
static const CLID & classID()
Definition: RecEmcShower.h:26

◆ Cluster()

void RecEmcShower::Cluster ( RecEmcCluster pCluster)

Definition at line 114 of file RecEmcShower.cxx.

115{
116 fCluster=pCluster;
117}

Referenced by RecEmcShowerCnv::TObjectToDataObject().

◆ ClusterId()

void RecEmcShower::ClusterId ( const RecEmcID  id)

Definition at line 109 of file RecEmcShower.cxx.

110{
111 fClusterId=id;
112}

Referenced by EmcRecSplitWeighted::Split(), and RecEmcShowerCnv::TObjectToDataObject().

◆ Dump()

void RecEmcShower::Dump ( ) const

Definition at line 190 of file RecEmcShower.cxx.

191{
192 RecEmcFractionMap::const_iterator pFractionMap;
193
194 cout<<"EMC Shower: ";
195
196 cout<<"Shower Id= ";
197 cout<<fShowerId<<endl;
198
199 for(pFractionMap=fFractionMap.begin();
200 pFractionMap!=fFractionMap.end();
201 pFractionMap++)
202 {
203 pFractionMap->second.Dump();
204 }
205}

◆ EAll()

RecEmcEnergy RecEmcShower::EAll ( RecEmcEnergy  e)

◆ ELepton()

RecEmcEnergy RecEmcShower::ELepton ( RecEmcEnergy  e)

Definition at line 282 of file RecEmcShower.cxx.

283{
284 return fELepton=e;
285}

Referenced by EmcRecShowerEnergy::Energy(), and RecEmcShowerCnv::TObjectToDataObject().

◆ End()

RecEmcFractionMap::const_iterator RecEmcShower::End ( ) const

◆ Erase()

void RecEmcShower::Erase ( const RecEmcFraction aFraction)

Definition at line 154 of file RecEmcShower.cxx.

155{
156 RecEmcFractionMap::const_iterator pFractionMap;
157 pFractionMap=fFractionMap.find(aFraction.getCellId());
158
159 //blank FractionMap
160 if(fFractionMap.empty())
161 {
162 return;
163 }
164
165 //not find
166 if(pFractionMap==End())
167 {
168 return;
169 }
170
171 //find it
172 if(pFractionMap!=End())
173 {
174 fFractionMap.erase(pFractionMap->first);
175 //empty
176 if(fFractionMap.empty())
177 {
178 Clear();
179 return;
180 }
181 //not empty
182 else
183 {
184 return;
185 }
186 }
187}
RecEmcID getCellId() const
Definition: RecEmcHit.h:47
RecEmcFractionMap::const_iterator End() const

◆ ETof2x1()

RecEmcEnergy RecEmcShower::ETof2x1 ( RecEmcEnergy  e)

Definition at line 286 of file RecEmcShower.cxx.

287{
288 return fETof2x1=e;
289}

◆ ETof2x3()

RecEmcEnergy RecEmcShower::ETof2x3 ( RecEmcEnergy  e)

Definition at line 290 of file RecEmcShower.cxx.

291{
292 return fETof2x3=e;
293}

◆ Find()

RecEmcFractionMap::const_iterator RecEmcShower::Find ( const RecEmcID CellId) const

Definition at line 141 of file RecEmcShower.cxx.

142{
143 // If failed the return vale is End().
144 return fFractionMap.find(CellId);
145}

Referenced by EmcRecShowerEnergy::Energy().

◆ getCellId3x3()

RecEmcIDVector RecEmcShower::getCellId3x3 ( ) const
inline

Definition at line 65 of file RecEmcShower.h.

65{ return fCellId3x3; }

◆ getCellId5x5()

RecEmcIDVector RecEmcShower::getCellId5x5 ( ) const
inline

Definition at line 68 of file RecEmcShower.h.

68{ return fCellId5x5; }

◆ getCluster()

RecEmcCluster * RecEmcShower::getCluster ( ) const
inline

Definition at line 62 of file RecEmcShower.h.

62{ return fCluster; }

Referenced by EmcRec::execute().

◆ getClusterId()

RecEmcID RecEmcShower::getClusterId ( ) const
inline

Definition at line 59 of file RecEmcShower.h.

59{ return fClusterId; }

Referenced by Gam4pikp::execute(), and operator<<().

◆ getEAll()

RecEmcEnergy RecEmcShower::getEAll ( ) const
inline

◆ getELepton()

RecEmcEnergy RecEmcShower::getELepton ( ) const
inline

Definition at line 95 of file RecEmcShower.h.

95{ return fELepton; }

Referenced by operator<<().

◆ getETof2x1()

RecEmcEnergy RecEmcShower::getETof2x1 ( ) const
inline

Definition at line 98 of file RecEmcShower.h.

98{ return fETof2x1; }

Referenced by EmcRec::execute().

◆ getETof2x3()

RecEmcEnergy RecEmcShower::getETof2x3 ( ) const
inline

Definition at line 101 of file RecEmcShower.h.

101{ return fETof2x3; }

Referenced by EmcRec::execute().

◆ getFractionMap()

RecEmcFractionMap RecEmcShower::getFractionMap ( ) const

Definition at line 214 of file RecEmcShower.cxx.

215{
216 RecEmcFractionMap tmpFractionMap;
217 RecEmcFractionMap::const_iterator pFractionMap;
218
219 for(pFractionMap=fFractionMap.begin();
220 pFractionMap!=fFractionMap.end();
221 pFractionMap++){
222 RecEmcFraction aFraction=pFractionMap->second;
223 tmpFractionMap[aFraction.getCellId()]=aFraction;
224 }
225
226 return tmpFractionMap;
227}
map< RecEmcID, RecEmcFraction, less< RecEmcID > > RecEmcFractionMap

◆ getFractionMap3x3()

RecEmcFractionMap RecEmcShower::getFractionMap3x3 ( ) const

Definition at line 229 of file RecEmcShower.cxx.

230{
231 RecEmcFractionMap tmpFractionMap;
232 if(fFractionMap.empty()) return tmpFractionMap;
233
234 RecEmcFractionMap::const_iterator pFractionMap;
235 ci_RecEmcIDVector pNearCell;
236
237 for(pFractionMap=fFractionMap.begin();
238 pFractionMap!=fFractionMap.end();
239 pFractionMap++){
240 for(pNearCell=fCellId3x3.begin();
241 pNearCell!=fCellId3x3.end();
242 pNearCell++){
243 if(pFractionMap->second.getCellId()==*pNearCell){
244 RecEmcFraction aFraction=pFractionMap->second;
245 tmpFractionMap[aFraction.getCellId()]=aFraction;
246 }
247 }
248 }
249
250 return tmpFractionMap;
251}
RecEmcIDVector::const_iterator ci_RecEmcIDVector

Referenced by operator<<(), and EmcRecShowerPosLog::Position().

◆ getFractionMap5x5()

RecEmcFractionMap RecEmcShower::getFractionMap5x5 ( ) const

Definition at line 253 of file RecEmcShower.cxx.

254{
255 RecEmcFractionMap tmpFractionMap;
256 if(fFractionMap.empty()) return tmpFractionMap;
257
258 RecEmcFractionMap::const_iterator pFractionMap;
259 ci_RecEmcIDVector pNearCell;
260
261 for(pFractionMap=fFractionMap.begin();
262 pFractionMap!=fFractionMap.end();
263 pFractionMap++){
264 for(pNearCell=fCellId5x5.begin();
265 pNearCell!=fCellId5x5.end();
266 pNearCell++){
267 if(pFractionMap->second.getCellId()==*pNearCell){
268 RecEmcFraction aFraction=pFractionMap->second;
269 tmpFractionMap[aFraction.getCellId()]=aFraction;
270 }
271 }
272 }
273
274 return tmpFractionMap;
275}

Referenced by EmcRecShowerShape::A20Moment(), EmcRecShowerShape::A42Moment(), EmcSelBhaEvent::FillBhabha(), EmcRecShowerShape::LatMoment(), operator<<(), EmcRecShowerPosLog::Position(), and EmcRecShowerShape::SecondMoment().

◆ getShowerId()

◆ getSize()

unsigned int RecEmcShower::getSize ( ) const

Definition at line 209 of file RecEmcShower.cxx.

210{
211 return fFractionMap.size();
212}

Referenced by EmcRecShowerEnergy::Energy(), and operator<<().

◆ Insert()

void RecEmcShower::Insert ( const RecEmcFraction aFraction)

Definition at line 148 of file RecEmcShower.cxx.

149{
150 fFractionMap[aFraction.getCellId()]=aFraction;
151 return;
152}

Referenced by EmcRecSplitWeighted::Split(), and RecEmcShowerCnv::TObjectToDataObject().

◆ NearestSeed() [1/2]

RecEmcID RecEmcShower::NearestSeed ( ) const

Definition at line 296 of file RecEmcShower.cxx.

297{
298 return fNearestSeed;
299}

Referenced by EmcRec::execute().

◆ NearestSeed() [2/2]

RecEmcID RecEmcShower::NearestSeed ( const RecEmcID ns)

Definition at line 301 of file RecEmcShower.cxx.

302{
303 return fNearestSeed=ns;
304}
#define ns(x)
Definition: xmltok.c:1504

◆ operator<()

bool RecEmcShower::operator< ( const RecEmcShower aShower) const
inline

Definition at line 38 of file RecEmcShower.h.

38 {
39 return energy() < aShower.energy();
40 }
double energy() const
Definition: DstEmcShower.h:45

◆ operator=()

RecEmcShower & RecEmcShower::operator= ( const DstEmcShower aShower)

Definition at line 30 of file RecEmcShower.cxx.

31{
32 Clear();
33 DstEmcShower::operator=(aShower);
34 fShowerId=RecEmcID(aShower.cellId());
35 return *this;
36}

◆ operator>()

bool RecEmcShower::operator> ( const RecEmcShower aShower) const
inline

Definition at line 42 of file RecEmcShower.h.

42 {
43 return energy() > aShower.energy();
44 }

◆ PhiGap() [1/2]

int RecEmcShower::PhiGap ( ) const

Definition at line 316 of file RecEmcShower.cxx.

317{
318 return fPhiGap;
319}

Referenced by EmcRec::execute(), PhiGap(), and EmcRecSplitWeighted::Split().

◆ PhiGap() [2/2]

int RecEmcShower::PhiGap ( int  PhiGap)

Definition at line 321 of file RecEmcShower.cxx.

322{
323 return fPhiGap=PhiGap;
324}
int PhiGap() const

◆ ShowerId()

RecEmcID RecEmcShower::ShowerId ( RecEmcID  id)

◆ ThetaGap() [1/2]

int RecEmcShower::ThetaGap ( ) const

Definition at line 306 of file RecEmcShower.cxx.

307{
308 return fThetaGap;
309}

Referenced by EmcRec::execute(), EmcRecSplitWeighted::Split(), and ThetaGap().

◆ ThetaGap() [2/2]

int RecEmcShower::ThetaGap ( int  ThetaGap)

Definition at line 311 of file RecEmcShower.cxx.

312{
313 return fThetaGap=ThetaGap;
314}
int ThetaGap() const

◆ TofShower() [1/2]

bool RecEmcShower::TofShower ( ) const
inline

Definition at line 51 of file RecEmcShower.h.

51{return fTofShower;}

◆ TofShower() [2/2]

void RecEmcShower::TofShower ( bool  tof)
inline

Definition at line 52 of file RecEmcShower.h.

52{fTofShower=tof;}

Member Data Documentation

◆ fCellId3x3

RecEmcIDVector RecEmcShower::fCellId3x3
protected

Definition at line 124 of file RecEmcShower.h.

Referenced by CellId3x3(), Clear(), getCellId3x3(), and getFractionMap3x3().

◆ fCellId5x5

RecEmcIDVector RecEmcShower::fCellId5x5
protected

Definition at line 126 of file RecEmcShower.h.

Referenced by CellId5x5(), Clear(), getCellId5x5(), and getFractionMap5x5().

◆ fCluster

RecEmcCluster* RecEmcShower::fCluster
protected

Definition at line 122 of file RecEmcShower.h.

Referenced by Clear(), Cluster(), and getCluster().

◆ fClusterId

RecEmcID RecEmcShower::fClusterId
protected

Definition at line 121 of file RecEmcShower.h.

Referenced by Clear(), ClusterId(), and getClusterId().

◆ fEAll

RecEmcEnergy RecEmcShower::fEAll
protected

Definition at line 141 of file RecEmcShower.h.

Referenced by Clear(), EAll(), and getEAll().

◆ fELepton

RecEmcEnergy RecEmcShower::fELepton
protected

Definition at line 143 of file RecEmcShower.h.

Referenced by Clear(), ELepton(), and getELepton().

◆ fETof2x1

RecEmcEnergy RecEmcShower::fETof2x1
protected

Definition at line 146 of file RecEmcShower.h.

Referenced by Clear(), ETof2x1(), and getETof2x1().

◆ fETof2x3

RecEmcEnergy RecEmcShower::fETof2x3
protected

Definition at line 148 of file RecEmcShower.h.

Referenced by Clear(), ETof2x3(), and getETof2x3().

◆ fFractionMap

RecEmcFractionMap RecEmcShower::fFractionMap
protected

◆ fNearestSeed

RecEmcID RecEmcShower::fNearestSeed
protected

Definition at line 155 of file RecEmcShower.h.

Referenced by Clear(), and NearestSeed().

◆ fPhiGap

int RecEmcShower::fPhiGap
protected

Definition at line 163 of file RecEmcShower.h.

Referenced by Clear(), and PhiGap().

◆ fShowerId

RecEmcID RecEmcShower::fShowerId
protected

Definition at line 119 of file RecEmcShower.h.

Referenced by Clear(), Dump(), getShowerId(), operator=(), RecEmcShower(), and ShowerId().

◆ fThetaGap

int RecEmcShower::fThetaGap
protected

Definition at line 162 of file RecEmcShower.h.

Referenced by Clear(), and ThetaGap().

◆ fTofShower

bool RecEmcShower::fTofShower
protected

Definition at line 117 of file RecEmcShower.h.

Referenced by Clear(), and TofShower().


The documentation for this class was generated from the following files: