CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
WorkFlow.py
Go to the documentation of this file.
1 
2 import re
3 
4 # ================================================================================
5 
6 class WorkFlow(object):
7 
8  def __init__(self, num, nameID, inputInfo=None, commands=None):
9 
10  self.numId = num
11  self.nameId = nameID
12  self.cmds = []
13 
14  if commands:
15  for (i,c) in enumerate(commands):
16  nToRun=10 + (i!=0)*90
17  self.check(c,nToRun)
18 
19 
20  # run on real data requested:
21  self.input = inputInfo
22 
23  return
24 
25  def check(self, cmd=None, nEvtDefault=10):
26  if not cmd : return None
27 
28  if (isinstance(cmd,str)) and ( ' -n ' not in cmd):
29  cmd+=' -n '+str(nEvtDefault)+' '
30 
31  self.cmds.append(cmd)
32  return cmd
33 
34 
35 class WorkFlowConnector(object):
36  def __init__(self):
37  self.moduleName=''
38  self.tier=''
39  self.fileName=''
40 
41 class WorkFlowBlock(object):
42  def __init__(self, name,cmdDict):
43  self.nameId = name
44  self.command = ''#made from the cmdDict
45 
46  ##I/O of the block
47  self.ins=None
48  self.outs=None
49 
50  def getProcess(self):
51  #get ConfigBuilder to give a process back
52  return None
53 
ins
I/O of the block.
Definition: WorkFlow.py:47
#define str(s)