Public Member Functions | |
def | initTagList |
def | check |
Public Attributes | |
tag | |
data | |
gen | |
sim | |
Private Member Functions | |
def | _fill_gen |
def | _fill_sim |
Definition at line 9 of file UserData.py.
def SimHistsExample::UserData::GenSimData::initTagList | ( | self | ) |
Definition at line 11 of file UserData.py.
00011 : 00012 00013 self.tag = self.tagSet.GenSimTag = Tag() 00014 self.data = self.tag.dataSet.GenSimData = Data('/Event/UserData/SimHistsExample/GenSim') 00015 self.gen = self.data.GenSimData.Gen 00016 self.sim = self.data.GenSimData.Sim 00017 00018 self.gen.number = Int() 00019 self.gen.pid = IntArray() 00020 self.gen.mass = FloatArray() 00021 self.gen.energy = FloatArray() 00022 self.gen.x, self.gen.y, self.gen.z, self.gen.dx, self.gen.dy, self.gen.dz = \ 00023 map (lambda x: FloatArray(), range(6)) 00024 00025 self.sim.nhits = Int() 00026 self.sim.weight = FloatArray() 00027 self.sim.detid = IntArray() 00028 self.sim.time = FloatArray() 00029 00030 return 00031 def check(self,evt):
def SimHistsExample::UserData::GenSimData::check | ( | self, | ||
evt | ||||
) |
Definition at line 32 of file UserData.py.
00032 : 00033 00034 gh = evt['/Event/Gen/GenHeader'] 00035 if not gh: 00036 self.error('No GenHeader found') 00037 return FAILURE 00038 self._fill_gen(gh) 00039 00040 sh = evt['/Event/Sim/SimHeader'] 00041 if not sh: 00042 self.error('No SimHeader found') 00043 return FAILURE 00044 self._fill_sim(sh) 00045 00046 self.tag.tagIt() 00047 00048 return SUCCESS 00049 def _fill_gen(self,gh):
def SimHistsExample::UserData::GenSimData::_fill_gen | ( | self, | ||
gh | ||||
) | [private] |
Definition at line 50 of file UserData.py.
00050 : 00051 ge = gh.event() 00052 if not ge: 00053 self.error('Failed to get a GenEvent') 00054 return FAILURE 00055 00056 self.gen.number = ge.particles_size() 00057 for part in irange(ge.particles_begin(),ge.particles_end()): 00058 self.gen.pid.append(part.pdg_id()) 00059 self.gen.mass.append(part.generated_mass()) 00060 mom = part.momentum() 00061 mag = mom.mag() 00062 self.gen.energy.append(mom.e()) 00063 vtx = part.production_vertex() 00064 self.gen.x.append(vtx.x()) 00065 self.gen.y.append(vtx.y()) 00066 self.gen.z.append(vtx.z()) 00067 self.gen.dx.append(mom.x()/mag) 00068 self.gen.dy.append(mom.y()/mag) 00069 self.gen.dz.append(mom.z()/mag) 00070 return SUCCESS 00071 def _fill_sim(self,sh):
def SimHistsExample::UserData::GenSimData::_fill_sim | ( | self, | ||
sh | ||||
) | [private] |
Definition at line 72 of file UserData.py.
00072 : 00073 shh = sh.hits() 00074 hcmap = shh.hitCollection() 00075 for shcoll in irange(hcmap.begin(),hcmap.end()): 00076 detid = shcoll.first # detector 00077 shcont = shcoll.second.collection() # vector<SimHit*> 00078 00079 for hit in irange(shcont.begin(),shcont.end()): 00080 00081 self.sim.detid.append(detid) 00082 self.sim.weight.append(hit.weight()) 00083 self.sim.time.append(hit.time()) 00084 00085 continue 00086 continue 00087 self.sim.nhits = len(self.sim.detid) 00088 return SUCCESS 00089
Definition at line 13 of file UserData.py.
Definition at line 14 of file UserData.py.
Definition at line 15 of file UserData.py.
Definition at line 16 of file UserData.py.