ATLAS Offline Software
Loading...
Searching...
No Matches
python.HanMetadata Namespace Reference

Functions

 getMetadataKeys (f)
 getMetadata (f, key)
 addMetadata (f, key, mapping)

Function Documentation

◆ addMetadata()

python.HanMetadata.addMetadata ( f,
key,
mapping )

Definition at line 29 of file HanMetadata.py.

29def addMetadata(f, key, mapping):
30 import ROOT
31 mddir = f.Get('HanMetadata_')
32 if not mddir:
33 mddir = f.mkdir('HanMetadata_')
34 keydir = mddir.Get(key)
35 if not keydir:
36 keydir = mddir.mkdir(key)
37 for subkey in mapping:
38 if keydir.Get(subkey):
39 keydir.rmdir(subkey)
40 subkeydir = keydir.mkdir(subkey)
41 val = mapping[subkey]
42 valstr = ROOT.TObjString(val)
43 subkeydir.WriteTObject(valstr, val)
44 f.Flush()

◆ getMetadata()

python.HanMetadata.getMetadata ( f,
key )

Definition at line 12 of file HanMetadata.py.

12def getMetadata(f, key):
13 rv = {}
14 mddir = f.Get('HanMetadata_')
15 if not mddir:
16 return rv
17 else:
18 keydir = mddir.Get(key)
19 if not keydir:
20 return rv
21 else:
22 for subkey in keydir.GetListOfKeys():
23 subkeydirlist = keydir.Get(subkey.GetName()).GetListOfKeys()
24 if len(subkeydirlist) < 1:
25 continue
26 rv[subkey.GetName()] = subkeydirlist[0].GetName()
27 return rv
28

◆ getMetadataKeys()

python.HanMetadata.getMetadataKeys ( f)

Definition at line 5 of file HanMetadata.py.

5def getMetadataKeys(f):
6 mddir = f.Get('HanMetadata_')
7 if not mddir:
8 return []
9 else:
10 return [x.GetName() for x in mddir.GetListOfKeys()]
11