ATLAS Offline Software
Classes | Functions | Variables
xAODRootTest Namespace Reference

Classes

class  AllocTestRead
 
class  Analysis
 
class  xAODTestClearDecor
 
class  xAODTestCopy
 
class  xAODTestDecor
 
class  xAODTestPDecor
 
class  xAODTestRead
 

Functions

def CHECK (sc)
 
def _typename (t)
 
def xAODInit ()
 
def format_int (x)
 
def format_float (x)
 
def format_str (x)
 
def format_el (x)
 
def format_el_vec (v)
 
def format_float_vec (v)
 
def format_int_vec (v)
 
def format_str_vec (v)
 
def dump_auxitem (x, auxid, f=sys.stdout)
 
def dump_auxdata (x, exclude=[], f=sys.stdout)
 
def dump_c (c, f=sys.stdout)
 
def dump_xaodobj (h, f=sys.stdout)
 
def dump_plinks (p, f=sys.stdout)
 
def copy_obj (event, obj, key)
 
def copy_vec (event, obj, key)
 
def copy_view (event, obj, key)
 

Variables

 CVec_type = ROOT.DataVector(ROOT.DMTest.C_v1)
 
dictionary accessors
 

Function Documentation

◆ _typename()

def xAODRootTest._typename (   t)
private

Definition at line 34 of file xAODRootTest.py.

34 def _typename(t):
35  return getattr (t, '__cpp_name__', t.__name__)
36 

◆ CHECK()

def xAODRootTest.CHECK (   sc)

Definition at line 25 of file xAODRootTest.py.

25 def CHECK(sc):
26  if not sc.isSuccess():
27  raise Exception ('bad StatusCode')
28  return
29 
30 
31 
32 reg=ROOT.SG.AuxTypeRegistry.instance()
33 

◆ copy_obj()

def xAODRootTest.copy_obj (   event,
  obj,
  key 
)

Definition at line 144 of file xAODRootTest.py.

144 def copy_obj (event, obj, key):
145  copy = obj.__class__()
146  copy_aux = obj.getConstStore().__class__()
147  copy.setNonConstStore (copy_aux)
148  copy.__assign__ (obj)
149  CHECK (event.record (copy, key))
150  CHECK (event.record (copy_aux, key + 'Aux.'))
151  ROOT.SetOwnership (copy, False)
152  ROOT.SetOwnership (copy_aux, False)
153  return
154 
155 

◆ copy_vec()

def xAODRootTest.copy_vec (   event,
  obj,
  key 
)

Definition at line 156 of file xAODRootTest.py.

156 def copy_vec (event, obj, key):
157  copy = obj.__class__()
158  copy_aux = obj.getConstStore().__class__()
159  copy.setNonConstStore (copy_aux)
160  for i in range(obj.size()):
161  elt_orig = obj[i]
162  if _typename (elt_orig.__class__).startswith ('DataModel_detail::ElementProxy<'):
163  elt_orig = elt_orig.__follow__()
164  elt = elt_orig.__class__()
165  copy.push_back(elt)
166  ROOT.SetOwnership (elt, False)
167  elt.__assign__ (elt_orig)
168  CHECK (event.record (copy, key))
169  CHECK (event.record (copy_aux, key + 'Aux.'))
170  ROOT.SetOwnership (copy, False)
171  ROOT.SetOwnership (copy_aux, False)
172  return
173 
174 

◆ copy_view()

def xAODRootTest.copy_view (   event,
  obj,
  key 
)

Definition at line 175 of file xAODRootTest.py.

175 def copy_view (event, obj, key):
176  copy = obj.__class__(obj)
177  copy.toPersistent()
178  CHECK (event.record (copy, key))
179  ROOT.SetOwnership (copy, False)
180  return
181 
182 

◆ dump_auxdata()

def xAODRootTest.dump_auxdata (   x,
  exclude = [],
  f = sys.stdout 
)

Definition at line 107 of file xAODRootTest.py.

107 def dump_auxdata (x, exclude=[], f = sys.stdout):
108  auxids = list(x.getAuxIDs())
109  auxids = [(reg.getName(id), id) for id in auxids]
110  auxids.sort()
111  for name, auxid in auxids:
112  if name in exclude: continue
113  if reg.isLinked (auxid): continue
114  print (name + ': ', file=f, end='')
115  dump_auxitem (x, auxid, f)
116  return
117 
118 

◆ dump_auxitem()

def xAODRootTest.dump_auxitem (   x,
  auxid,
  f = sys.stdout 
)

Definition at line 95 of file xAODRootTest.py.

95 def dump_auxitem (x, auxid, f = sys.stdout):
96  tname = reg.getTypeName (auxid)
97  ac_p = accessors.get (tname)
98  if not ac_p:
99  print ('<unknown %s>'%tname, end='', file=f)
100  else:
101  (ac_cl, formatter) = ac_p
102  val = ac_cl(reg.getName(auxid))(x)
103  print (formatter(val) + '; ', end='', file=f)
104  return
105 
106 

◆ dump_c()

def xAODRootTest.dump_c (   c,
  f = sys.stdout 
)

Definition at line 119 of file xAODRootTest.py.

119 def dump_c (c, f=sys.stdout):
120  if hasattr(c, '__deref__'):
121  c = c.__deref__()
122  print (' anInt1: %d; aFloat: %.1f; ' % (c.anInt(), c.aFloat()), end='')
123  dump_auxdata (c, exclude = ['anInt1', 'aFloat'])
124  print ('')
125  return
126 
127 

◆ dump_plinks()

def xAODRootTest.dump_plinks (   p,
  f = sys.stdout 
)

Definition at line 136 of file xAODRootTest.py.

136 def dump_plinks (p, f=sys.stdout):
137  if hasattr(p, '__deref__'):
138  p = p.__deref__()
139  dump_auxdata (p)
140  print ('')
141  return
142 
143 

◆ dump_xaodobj()

def xAODRootTest.dump_xaodobj (   h,
  f = sys.stdout 
)

Definition at line 128 of file xAODRootTest.py.

128 def dump_xaodobj (h, f=sys.stdout):
129  if hasattr(h, '__deref__'):
130  h = h.__deref__()
131  dump_auxdata (h)
132  print ('')
133  return
134 
135 

◆ format_el()

def xAODRootTest.format_el (   x)

Definition at line 52 of file xAODRootTest.py.

52 def format_el(x): return '%s[%s]' % (x.dataID(), ('inv' if x.isDefaultIndex() else x.index()))

◆ format_el_vec()

def xAODRootTest.format_el_vec (   v)

Definition at line 53 of file xAODRootTest.py.

53 def format_el_vec(v): return '[' + ', '.join([format_el(el) for el in v.asVector()]) + ']'

◆ format_float()

def xAODRootTest.format_float (   x)

Definition at line 50 of file xAODRootTest.py.

50 def format_float(x): return '%.1f'%x

◆ format_float_vec()

def xAODRootTest.format_float_vec (   v)

Definition at line 54 of file xAODRootTest.py.

54 def format_float_vec(v):
55  l = [format_float(x) for x in v]
56  return '[' + ','.join(l) + ']'

◆ format_int()

def xAODRootTest.format_int (   x)

Definition at line 49 of file xAODRootTest.py.

49 def format_int(x): return '%d'%x

◆ format_int_vec()

def xAODRootTest.format_int_vec (   v)

Definition at line 57 of file xAODRootTest.py.

57 def format_int_vec(v):
58  l = [format_int(x) for x in v]
59  return '[' + ','.join(l) + ']'

◆ format_str()

def xAODRootTest.format_str (   x)

Definition at line 51 of file xAODRootTest.py.

51 def format_str(x): return f"'{x}'"

◆ format_str_vec()

def xAODRootTest.format_str_vec (   v)

Definition at line 60 of file xAODRootTest.py.

60 def format_str_vec(v):
61  l = [format_str(x) for x in v]
62  return '[' + ','.join(l) + ']'

◆ xAODInit()

def xAODRootTest.xAODInit ( )

Definition at line 37 of file xAODRootTest.py.

37 def xAODInit():
38  ROOT.xAOD.TEvent
39  CHECK(ROOT.xAOD.Init())
40  return
41 
42 
43 
44 cvec_cls=ROOT.DataVector(ROOT.DMTest.C_v1)
45 cel_cls=ROOT.ElementLink(cvec_cls)
46 
47 
48 

Variable Documentation

◆ accessors

dictionary xAODRootTest.accessors
Initial value:
1 = {
2  'int' : (ROOT.SG.ConstAccessor(int), format_int),
3  'unsigned int' : (getattr (ROOT, 'SG::ConstAccessor<unsigned int>'), format_int),
4  'float' : (ROOT.SG.ConstAccessor(float), format_float),
5  'std::vector<float>' : (getattr (ROOT, 'SG::ConstAccessor<std::vector<float> >'), format_float_vec),
6  'std::vector<int>' : (getattr (ROOT, 'SG::ConstAccessor<std::vector<int> >'), format_int_vec),
7  'ElementLink<DataVector<DMTest::C_v1> >' :
8  (ROOT.SG.ConstAccessor(cel_cls), format_el),
9  'SG::JaggedVecElt<int>' :
10  (ROOT.SG.ConstAccessor(ROOT.SG.JaggedVecElt(ROOT.int)),
11  format_int_vec),
12  'SG::JaggedVecElt<float>' :
13  (ROOT.SG.ConstAccessor(ROOT.SG.JaggedVecElt(ROOT.float)),
14  format_float_vec),
15  'SG::JaggedVecElt<double>' :
16  (ROOT.SG.ConstAccessor(ROOT.SG.JaggedVecElt(ROOT.double)),
17  format_float_vec),
18  'SG::JaggedVecElt<std::string>' :
19  (ROOT.SG.ConstAccessor(ROOT.SG.JaggedVecElt(ROOT.std.string)),
20  format_str_vec),
21  'SG::JaggedVecElt<ElementLink<DataVector<DMTest::C_v1> > >' :
22  (ROOT.SG.ConstAccessor(ROOT.SG.JaggedVecElt(ROOT.ElementLink(CVec_type))),
23  format_el_vec),
24  'SG::PackedLink<DataVector<DMTest::C_v1> >' :
25  (ROOT.SG.ConstAccessor(ROOT.SG.PackedLink(ROOT.DataVector(ROOT.DMTest.C_v1))),
26  format_el),
27  'std::vector<SG::PackedLink<DataVector<DMTest::C_v1> > >' :
28  (ROOT.SG.ConstAccessor(ROOT.std.vector(ROOT.SG.PackedLink(ROOT.DataVector(ROOT.DMTest.C_v1)))),
29  format_el_vec),
30  }

Definition at line 64 of file xAODRootTest.py.

◆ CVec_type

xAODRootTest.CVec_type = ROOT.DataVector(ROOT.DMTest.C_v1)

Definition at line 63 of file xAODRootTest.py.

xAODRootTest.format_str
def format_str(x)
Definition: xAODRootTest.py:51
xAODRootTest.format_el_vec
def format_el_vec(v)
Definition: xAODRootTest.py:53
xAODRootTest.dump_plinks
def dump_plinks(p, f=sys.stdout)
Definition: xAODRootTest.py:136
xAODRootTest._typename
def _typename(t)
Definition: xAODRootTest.py:34
xAODRootTest.format_int_vec
def format_int_vec(v)
Definition: xAODRootTest.py:57
xAODRootTest.dump_c
def dump_c(c, f=sys.stdout)
Definition: xAODRootTest.py:119
xAODRootTest.format_int
def format_int(x)
Definition: xAODRootTest.py:49
xAODRootTest.format_el
def format_el(x)
Definition: xAODRootTest.py:52
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:194
xAODRootTest.copy_view
def copy_view(event, obj, key)
Definition: xAODRootTest.py:175
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
xAODRootTest.format_str_vec
def format_str_vec(v)
Definition: xAODRootTest.py:60
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
vtune_athena.formatter
formatter
Definition: vtune_athena.py:19
xAODRootTest.format_float
def format_float(x)
Definition: xAODRootTest.py:50
xAODRootTest.xAODInit
def xAODInit()
Definition: xAODRootTest.py:37
xAODRootTest.dump_auxitem
def dump_auxitem(x, auxid, f=sys.stdout)
Definition: xAODRootTest.py:95
xAODRootTest.CHECK
def CHECK(sc)
Definition: xAODRootTest.py:25
xAODRootTest.dump_xaodobj
def dump_xaodobj(h, f=sys.stdout)
Definition: xAODRootTest.py:128
xAODRootTest.copy_obj
def copy_obj(event, obj, key)
Definition: xAODRootTest.py:144
xAODRootTest.format_float_vec
def format_float_vec(v)
Definition: xAODRootTest.py:54
xAODRootTest.copy_vec
def copy_vec(event, obj, key)
Definition: xAODRootTest.py:156
xAODRootTest.dump_auxdata
def dump_auxdata(x, exclude=[], f=sys.stdout)
Definition: xAODRootTest.py:107