ATLAS Offline Software
Loading...
Searching...
No Matches
geo_id.GeometryIdentifier Class Reference
Collaboration diagram for geo_id.GeometryIdentifier:

Public Member Functions

 __init__ (self, value)
 vol_id (self)
 bnd_id (self)
 lay_id (self)
 app_id (self)
 sen_id (self)
 chn_id (self)
 value (self, mask=None)
 __repr__ (self)

Public Attributes

 vol_id
 bnd_id
 lay_id
 app_id
 sen_id
 chn_id

Static Public Attributes

int volume_mask = 0xff00000000000000
int boundary_mask = 0x00ff000000000000
int layer_mask = 0x0000ff0000000000
int approach_mask = 0x000000f000000000
int sensitive_mask = 0x0000000ffff00000
int channel_mask = 0x00000000000fffff

Protected Member Functions

 _ffs (self, x)

Protected Attributes

 _value = value

Detailed Description

Definition at line 7 of file geo_id.py.

Constructor & Destructor Documentation

◆ __init__()

geo_id.GeometryIdentifier.__init__ ( self,
value )

Definition at line 15 of file geo_id.py.

15 def __init__(self, value):
16 assert type(value) == long
17 self._value = value
18

Member Function Documentation

◆ __repr__()

geo_id.GeometryIdentifier.__repr__ ( self)

Definition at line 53 of file geo_id.py.

53 def __repr__(self):
54 fmt = "GeometryIdentifier(vol={}, bnd={}, lay={}, app={}, sen={}, chn={})"
55 return fmt.format(self.vol_id,
56 self.bnd_id,
57 self.lay_id,
58 self.app_id,
59 self.sen_id,
60 self.chn_id)
61
62# infile = ROOT.TFile.Open(file)
63
64# tree = infile.Get("MaterialTracks")
65
66# for idx, event in enumerate(tree):

◆ _ffs()

geo_id.GeometryIdentifier._ffs ( self,
x )
protected
Returns the index, counting from 0, of the
least significant set bit in `x`.

Definition at line 19 of file geo_id.py.

19 def _ffs(self, x):
20 """Returns the index, counting from 0, of the
21 least significant set bit in `x`.
22 """
23 return (x&-x).bit_length()-1
24

◆ app_id()

geo_id.GeometryIdentifier.app_id ( self)

Definition at line 38 of file geo_id.py.

38 def app_id(self):
39 return self.value(self.approach_mask)
40

◆ bnd_id()

geo_id.GeometryIdentifier.bnd_id ( self)

Definition at line 30 of file geo_id.py.

30 def bnd_id(self):
31 return self.value(self.boundary_mask)
32

◆ chn_id()

geo_id.GeometryIdentifier.chn_id ( self)

Definition at line 46 of file geo_id.py.

46 def chn_id(self):
47 return self.value(self.channel_mask)
48

◆ lay_id()

geo_id.GeometryIdentifier.lay_id ( self)

Definition at line 34 of file geo_id.py.

34 def lay_id(self):
35 return self.value(self.layer_mask)
36

◆ sen_id()

geo_id.GeometryIdentifier.sen_id ( self)

Definition at line 42 of file geo_id.py.

42 def sen_id(self):
43 return self.value(self.sensitive_mask)
44

◆ value()

geo_id.GeometryIdentifier.value ( self,
mask = None )

Definition at line 49 of file geo_id.py.

49 def value(self, mask = None):
50 if mask == None: return self._value
51 return (self._value & mask) >> self._ffs(mask)
52

◆ vol_id()

geo_id.GeometryIdentifier.vol_id ( self)

Definition at line 26 of file geo_id.py.

26 def vol_id(self):
27 return self.value(self.volume_mask)
28

Member Data Documentation

◆ _value

geo_id.GeometryIdentifier._value = value
protected

Definition at line 17 of file geo_id.py.

◆ app_id

geo_id.GeometryIdentifier.app_id

Definition at line 58 of file geo_id.py.

◆ approach_mask

geo_id.GeometryIdentifier.approach_mask = 0x000000f000000000
static

Definition at line 11 of file geo_id.py.

◆ bnd_id

geo_id.GeometryIdentifier.bnd_id

Definition at line 56 of file geo_id.py.

◆ boundary_mask

geo_id.GeometryIdentifier.boundary_mask = 0x00ff000000000000
static

Definition at line 9 of file geo_id.py.

◆ channel_mask

geo_id.GeometryIdentifier.channel_mask = 0x00000000000fffff
static

Definition at line 13 of file geo_id.py.

◆ chn_id

geo_id.GeometryIdentifier.chn_id

Definition at line 60 of file geo_id.py.

◆ lay_id

geo_id.GeometryIdentifier.lay_id

Definition at line 57 of file geo_id.py.

◆ layer_mask

geo_id.GeometryIdentifier.layer_mask = 0x0000ff0000000000
static

Definition at line 10 of file geo_id.py.

◆ sen_id

geo_id.GeometryIdentifier.sen_id

Definition at line 59 of file geo_id.py.

◆ sensitive_mask

geo_id.GeometryIdentifier.sensitive_mask = 0x0000000ffff00000
static

Definition at line 12 of file geo_id.py.

◆ vol_id

geo_id.GeometryIdentifier.vol_id

Definition at line 55 of file geo_id.py.

◆ volume_mask

geo_id.GeometryIdentifier.volume_mask = 0xff00000000000000
static

Definition at line 8 of file geo_id.py.


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