ATLAS Offline Software
Loading...
Searching...
No Matches
NodeUtils.py
Go to the documentation of this file.
14
15from TrigIDR4Monitoring.Node import decode_flags
16from TrigIDR4Monitoring.Node import update_flags
17
18import datetime as dt
19
20from functools import wraps
21
22def timerwrapper(thefunction):
23 @wraps(thefunction)
24 def wrapper(*args, **kwargs):
25 """ timer wrapper around function """
26 t = dt.datetime.now()
27 result = thefunction( *args, **kwargs )
28 t2 = dt.datetime.now()
29 duration = str( round((t2 - t).total_seconds()*1000, 4))
30 print( f"{thefunction.__name__} timer: elapsed time: {duration} ms")
31 return result
32 return wrapper
33
34
35def timer( thefunction, *args, **kwargs):
36 return timerwrapper(thefunction)(*args,**kwargs)
37
38
39@timerwrapper
40def decodeFlags( flags, domain=None ) :
41 return decode_flags( flags, domain )
42
43@timerwrapper
44def updateFlags( flags, node, domain=None ) :
45 return update_flags( flags, node, domain )
46
47
48
void print(char *figname, TCanvas *c1)
timerwrapper(thefunction)
Definition NodeUtils.py:22
decodeFlags(flags, domain=None)
Definition NodeUtils.py:40
timer(thefunction, *args, **kwargs)
Definition NodeUtils.py:35
updateFlags(flags, node, domain=None)
Definition NodeUtils.py:44