4 from __future__
import print_function
7 def __init__(self,what='standard',strict=True):
8 from Configuration.PyReleaseValidation.MatrixReader
import MatrixReader
10 self.mrd.prepare(
'all',
'',
None)
15 return str(wfNumber)+
':'+
str(step)
18 key=self.
getKey(wfNumber,step)
20 self.
load(wfNumber,step)
25 def load(self,wfNumber,step):
26 from Configuration.Applications.ConfigBuilder
import ConfigBuilder
31 raise Exception(
'one should never be loading more than one process at a time due to python loading/altering feature')
32 key=self.
getKey(wfNumber,step)
36 for wf
in self.mrd.workFlows:
37 if float(wf.numId)!=wfNumber:
continue
39 if not hasattr(wf,
'cmdStep%d'%(step)):
continue
40 if not getattr(wf,
'cmdStep%d'%(step)):
continue
42 command=getattr(wf,
'cmdStep%d'%(step))
49 print(
"could not satisfy the request for step",step,
"of workflow",wfNumber)
53 key=self.
getKey(wfNumber,step)
60 key=self.
getKey(wfNumber,step)
70 for wf
in self.mrd.workFlows:
72 print(
'---------------------')
73 print(
'process workflow',wf.numId)
75 while self.
load(float(wf.numId),step):
77 print(
', '.
join(s.label()
for s
in p.schedule))
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
static std::string join(char **cmd)