ATLAS Offline Software
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
python.MultipleStreamManager.AugmentedPoolStreamExtension Class Reference
Inheritance diagram for python.MultipleStreamManager.AugmentedPoolStreamExtension:
Collaboration diagram for python.MultipleStreamManager.AugmentedPoolStreamExtension:

Public Member Functions

def __init__ (self, StreamName, FileName, Parent, asAlg, isVirtual, noTag=True)
 
def AddItem (self, item)
 Items & MetaDataItems. More...
 
def AddMetaDataItem (self, item)
 
def GetEventStream (self)
 
def GetMetaDataStream (self)
 
def SetOutputFileName (self, name)
 
def RemoveItem (self, item)
 
def GetItems (self)
 
def RemoveMetaDataItem (self, item)
 
def GetMetaDataItems (self)
 
def AcceptAlgs (self, AlgsList)
 Accept Algs. More...
 
def RequireAlgs (self, AlgsList)
 Require Algs. More...
 
def VetoAlgs (self, AlgsList)
 Veto Algs (ignored by prescaler for now) More...
 
def Print (self)
 
def AddAcceptAlgs (self, algs)
 Accept Algs. More...
 
def RemoveAcceptAlgs (self, algs)
 
def GetAcceptAlgs (self)
 
def AddRequireAlgs (self, algs)
 Require Algs. More...
 
def RemoveRequireAlgs (self, algs)
 
def GetRequireAlgs (self)
 
def AddVetoAlgs (self, algs)
 Veto Algs (ignored by prescaler for now) More...
 
def RemoveVetoAlgs (self, algs)
 
def GetVetoAlgs (self)
 
def AddOtherAlgsToBookkeep (self, algs)
 Other Algs (e.g. More...
 
def RemoveOtherAlgsToBookkeep (self, algs)
 
def GetOtherAlgsToBookkeep (self)
 
def GetSkimDecisionsWriter (self)
 Skim decisions writer. More...
 
def SetPrescale (self, value)
 Master prescale. More...
 
def GetPrescale (self)
 

Public Attributes

 parentIndex
 
 Stream
 
 Name
 
 OtherAlgs
 

Private Member Functions

def _ItemInList (self, item, aList)
 
def _AddValidItemToList (self, item, aList)
 
def _RemoveValidItemFromList (self, item, aList)
 

Private Attributes

 _Prescaler
 

Detailed Description

Definition at line 259 of file MultipleStreamManager.py.

Constructor & Destructor Documentation

◆ __init__()

def python.MultipleStreamManager.AugmentedPoolStreamExtension.__init__ (   self,
  StreamName,
  FileName,
  Parent,
  asAlg,
  isVirtual,
  noTag = True 
)

Definition at line 260 of file MultipleStreamManager.py.

260  def __init__(self, StreamName, FileName, Parent, asAlg, isVirtual, noTag=True):
261  AugmentedPoolStream.__init__(self, StreamName, FileName, asAlg, isVirtual, noTag)
262  index=0
263  try:
264  #Check wheter a StreamDAOD_PHYS stream exists
265  index=MSMgr.StreamDict[Parent]
266  except KeyError:
267  index=-1
268  self.parentIndex = index
269  return
270 
271 

Member Function Documentation

◆ _AddValidItemToList()

def python.MultipleStreamManager.AugmentedStreamBase._AddValidItemToList (   self,
  item,
  aList 
)
privateinherited

Definition at line 35 of file MultipleStreamManager.py.

35  def _AddValidItemToList(self,item,aList):
36  #Recursive loop if item is a list
37  if isinstance(item,list):
38  for i in item:
39  self._AddValidItemToList(i,aList)
40  #Add to list if item is a string and not already in the list
41  elif isinstance(item, str):
42  if not self._ItemInList(item,aList):
43  aList += [item]
44  else:
45  raise TypeError("AugmentedPoolStream._AddValidItemToList() does not support item of type %s"%type(item))
46  return
47 

◆ _ItemInList()

def python.MultipleStreamManager.AugmentedStreamBase._ItemInList (   self,
  item,
  aList 
)
privateinherited

Definition at line 24 of file MultipleStreamManager.py.

24  def _ItemInList(self,item,aList):
25  #Make sure aList is a list
26  if not isinstance(aList, list):
27  raise TypeError("AugmentedPoolStream._ItemInList() does not support aList of type %s"%type(aList))
28 
29  isInList=False
30  for i in aList:
31  if i==item:
32  isInList=True
33  return isInList
34 

◆ _RemoveValidItemFromList()

def python.MultipleStreamManager.AugmentedStreamBase._RemoveValidItemFromList (   self,
  item,
  aList 
)
privateinherited

Definition at line 48 of file MultipleStreamManager.py.

48  def _RemoveValidItemFromList(self,item,aList):
49  #Recursive loop if item is a list
50  if isinstance(item,list):
51  for i in item:
52  self._RemoveValidItemFromList(i,aList)
53  #Remove from list if item is a string and already in list
54  elif isinstance(item, str):
55  if self._ItemInList(item,aList):
56  aList.remove(item)
57  else:
58  print(self.Name,": WARNING you asked to remove item '%s' but this item is not present",item)
59  else:
60  raise TypeError("AugmentedPoolStream._RemoveValidItemFromList() does not support item of type %s"%type(item))
61  return
62 

◆ AcceptAlgs()

def python.MultipleStreamManager.AugmentedPoolStream.AcceptAlgs (   self,
  AlgsList 
)
inherited

Accept Algs.

Definition at line 217 of file MultipleStreamManager.py.

217  def AcceptAlgs(self, AlgsList):
218  #Keep this function for now... but we may get rid of it.
219  self.Stream.AcceptAlgs=AlgsList
220  return
221 

◆ AddAcceptAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.AddAcceptAlgs (   self,
  algs 
)
inherited

Accept Algs.

Definition at line 65 of file MultipleStreamManager.py.

65  def AddAcceptAlgs(self, algs):
66  self._AddValidItemToList(algs, self.Stream.AcceptAlgs)
67  return
68 

◆ AddItem()

def python.MultipleStreamManager.AugmentedPoolStreamExtension.AddItem (   self,
  item 
)

Items & MetaDataItems.

Reimplemented from python.MultipleStreamManager.AugmentedPoolStream.

Definition at line 274 of file MultipleStreamManager.py.

274  def AddItem(self, item):
275  if self.parentIndex >= 0:
276  if item in MSMgr.StreamList[self.parentIndex].Stream.ItemList:
277  return
278  self._AddValidItemToList(item, self.Stream.ItemList)
279  return
280 

◆ AddMetaDataItem()

def python.MultipleStreamManager.AugmentedPoolStreamExtension.AddMetaDataItem (   self,
  item 
)

Reimplemented from python.MultipleStreamManager.AugmentedPoolStream.

Definition at line 281 of file MultipleStreamManager.py.

281  def AddMetaDataItem(self, item):
282  return
283 

◆ AddOtherAlgsToBookkeep()

def python.MultipleStreamManager.AugmentedStreamBase.AddOtherAlgsToBookkeep (   self,
  algs 
)
inherited

Other Algs (e.g.

those used by a FilterCombiner, but ignored by everybody else)

Definition at line 104 of file MultipleStreamManager.py.

104  def AddOtherAlgsToBookkeep(self, algs):
105  self._AddValidItemToList(algs, self.OtherAlgs)
106  return
107 

◆ AddRequireAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.AddRequireAlgs (   self,
  algs 
)
inherited

Require Algs.

Definition at line 78 of file MultipleStreamManager.py.

78  def AddRequireAlgs(self, algs):
79  self._AddValidItemToList(algs, self.Stream.RequireAlgs)
80  return
81 

◆ AddVetoAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.AddVetoAlgs (   self,
  algs 
)
inherited

Veto Algs (ignored by prescaler for now)

Definition at line 91 of file MultipleStreamManager.py.

91  def AddVetoAlgs(self, algs):
92  self._AddValidItemToList(algs, self.Stream.VetoAlgs)
93  return
94 

◆ GetAcceptAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.GetAcceptAlgs (   self)
inherited

Definition at line 73 of file MultipleStreamManager.py.

73  def GetAcceptAlgs(self):
74  return self.Stream.AcceptAlgs
75 

◆ GetEventStream()

def python.MultipleStreamManager.AugmentedPoolStream.GetEventStream (   self)
inherited

Definition at line 178 of file MultipleStreamManager.py.

178  def GetEventStream(self):
179  #This is the stream that's written at each event
180  return self.Stream
181 

◆ GetItems()

def python.MultipleStreamManager.AugmentedPoolStream.GetItems (   self)
inherited

Definition at line 201 of file MultipleStreamManager.py.

201  def GetItems(self):
202  return self.Stream.ItemList
203 

◆ GetMetaDataItems()

def python.MultipleStreamManager.AugmentedPoolStream.GetMetaDataItems (   self)
inherited

Definition at line 212 of file MultipleStreamManager.py.

212  def GetMetaDataItems(self):
213  return self.Stream.MetadataItemList
214 

◆ GetMetaDataStream()

def python.MultipleStreamManager.AugmentedPoolStream.GetMetaDataStream (   self)
inherited

Definition at line 183 of file MultipleStreamManager.py.

183  def GetMetaDataStream(self):
184  #This is the stream that's written once per multiple events
185  return self.Stream
186 

◆ GetOtherAlgsToBookkeep()

def python.MultipleStreamManager.AugmentedStreamBase.GetOtherAlgsToBookkeep (   self)
inherited

Definition at line 112 of file MultipleStreamManager.py.

112  def GetOtherAlgsToBookkeep(self):
113  return self.OtherAlgs
114 

◆ GetPrescale()

def python.MultipleStreamManager.AugmentedStreamBase.GetPrescale (   self)
inherited

Definition at line 156 of file MultipleStreamManager.py.

156  def GetPrescale(self):
157  if hasattr(self,"_Prescaler"):
158  return self._Prescaler.Prescale
159  else:
160  return "NONE"
161 
162 
163 

◆ GetRequireAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.GetRequireAlgs (   self)
inherited

Definition at line 86 of file MultipleStreamManager.py.

86  def GetRequireAlgs(self):
87  return self.Stream.RequireAlgs
88 

◆ GetSkimDecisionsWriter()

def python.MultipleStreamManager.AugmentedStreamBase.GetSkimDecisionsWriter (   self)
inherited

Skim decisions writer.

Definition at line 117 of file MultipleStreamManager.py.

117  def GetSkimDecisionsWriter(self):
118  from EventBookkeeperTools.BookkeepingInfoWriter import SkimDecisionsWriter
119  sdw=SkimDecisionsWriter(self.Name+"_SkimDecisionsWriter")
120  newContainerName=self.Name+"_"+sdw.SkimDecisionsContainerName
121  sdw.SkimDecisionsContainerName=newContainerName
122  #sdw.OutputLevel=2
123  for a in self.GetRequireAlgs():
124  sdw.addRequireAlg(a)
125  for a in self.GetAcceptAlgs():
126  sdw.addAcceptAlg(a)
127  for a in self.GetVetoAlgs():
128  sdw.addVetoAlg(a)
129  for a in self.GetOtherAlgsToBookkeep():
130  sdw.addOtherAlg(a)
131  return sdw
132 

◆ GetVetoAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.GetVetoAlgs (   self)
inherited

Definition at line 99 of file MultipleStreamManager.py.

99  def GetVetoAlgs(self):
100  return self.Stream.VetoAlgs
101 

◆ Print()

def python.MultipleStreamManager.AugmentedPoolStream.Print (   self)
inherited

Definition at line 237 of file MultipleStreamManager.py.

237  def Print(self):
238  print("**** AugmentedPoolStream",self.Name,"****")
239  print("Output file:")
240  print(self.Stream.OutputFile)
241  print("AcceptAlgs:")
242  print(self.Stream.AcceptAlgs)
243  print("RequireAlgs:")
244  print(self.Stream.RequireAlgs)
245  print("VetoAlgs:")
246  print(self.Stream.VetoAlgs)
247  print("OtherAlgs to bookkeep (but not directly used by the Stream):")
248  print(self.OtherAlgs)
249  print("Master prescale:")
250  print(self.GetPrescale())
251  print("ItemList:")
252  print(self.Stream.ItemList)
253  print("MetaData ItemList:")
254  print(self.Stream.MetadataItemList)
255  return
256 
257 

◆ RemoveAcceptAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.RemoveAcceptAlgs (   self,
  algs 
)
inherited

Definition at line 69 of file MultipleStreamManager.py.

69  def RemoveAcceptAlgs(self, algs):
70  self._RemoveValidItemFromList(algs, self.Stream.AcceptAlgs)
71  return
72 

◆ RemoveItem()

def python.MultipleStreamManager.AugmentedPoolStream.RemoveItem (   self,
  item 
)
inherited

Definition at line 197 of file MultipleStreamManager.py.

197  def RemoveItem(self, item):
198  self._RemoveValidItemFromList(item, self.Stream.ItemList)
199  return
200 

◆ RemoveMetaDataItem()

def python.MultipleStreamManager.AugmentedPoolStream.RemoveMetaDataItem (   self,
  item 
)
inherited

Definition at line 208 of file MultipleStreamManager.py.

208  def RemoveMetaDataItem(self, item):
209  self._RemoveValidItemFromList(item, self.Stream.MetadataItemList)
210  return
211 

◆ RemoveOtherAlgsToBookkeep()

def python.MultipleStreamManager.AugmentedStreamBase.RemoveOtherAlgsToBookkeep (   self,
  algs 
)
inherited

Definition at line 108 of file MultipleStreamManager.py.

108  def RemoveOtherAlgsToBookkeep(self, algs):
109  self._RemoveValidItemFromList(algs, self.OtherAlgs)
110  return
111 

◆ RemoveRequireAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.RemoveRequireAlgs (   self,
  algs 
)
inherited

Definition at line 82 of file MultipleStreamManager.py.

82  def RemoveRequireAlgs(self, algs):
83  self._RemoveValidItemFromList(algs, self.Stream.RequireAlgs)
84  return
85 

◆ RemoveVetoAlgs()

def python.MultipleStreamManager.AugmentedStreamBase.RemoveVetoAlgs (   self,
  algs 
)
inherited

Definition at line 95 of file MultipleStreamManager.py.

95  def RemoveVetoAlgs(self, algs):
96  self._RemoveValidItemFromList(algs, self.Stream.VetoAlgs)
97  return
98 

◆ RequireAlgs()

def python.MultipleStreamManager.AugmentedPoolStream.RequireAlgs (   self,
  AlgsList 
)
inherited

Require Algs.

Definition at line 224 of file MultipleStreamManager.py.

224  def RequireAlgs(self, AlgsList):
225  #Keep this function for now... but we may get rid of it.
226  self.Stream.RequireAlgs=AlgsList
227  return
228 

◆ SetOutputFileName()

def python.MultipleStreamManager.AugmentedPoolStream.SetOutputFileName (   self,
  name 
)
inherited

Definition at line 187 of file MultipleStreamManager.py.

187  def SetOutputFileName(self, name):
188  self.Stream.OutputFile = name
189  return
190 

◆ SetPrescale()

def python.MultipleStreamManager.AugmentedStreamBase.SetPrescale (   self,
  value 
)
inherited

Master prescale.

Definition at line 135 of file MultipleStreamManager.py.

135  def SetPrescale(self,value):
136  #Set a master prescale to given value. Create the Prescaler tool if necessary.
137  if not hasattr(self,"_Prescaler"):
138  from PrimaryDPDMaker.PrimaryDPDMakerConf import PrimaryDPDPrescaler
139  prescalerName="MasterPrescale_"+self.Name
140  self._Prescaler = PrimaryDPDPrescaler(prescalerName)
141  #Deep copies of the Require and Accept algs lists considered by the Master prescaler
142  #Notes:
143  # 1) deep copy is necessary because the Master prescaler itself will be added to the RequireAlgs list\
144  # 2) this implies that SetPrescale must be the *last* algorithm added to the stream
145  self._Prescaler.RequireAlgs = self.Stream.RequireAlgs[:]
146  self._Prescaler.AcceptAlgs = self.Stream.AcceptAlgs[:]
147 
148  from AthenaCommon.AlgSequence import AlgSequence
149  topSequence = AlgSequence()
150  topSequence += self._Prescaler
151  self.AddRequireAlgs(prescalerName)
152 
153  self._Prescaler.Prescale=value
154  return
155 

◆ VetoAlgs()

def python.MultipleStreamManager.AugmentedPoolStream.VetoAlgs (   self,
  AlgsList 
)
inherited

Veto Algs (ignored by prescaler for now)

Definition at line 231 of file MultipleStreamManager.py.

231  def VetoAlgs(self, AlgsList):
232  #Keep this function for now... but we may get rid of it
233  self.Stream.VetoAlgs=AlgsList
234  return
235 

Member Data Documentation

◆ _Prescaler

python.MultipleStreamManager.AugmentedStreamBase._Prescaler
privateinherited

Definition at line 140 of file MultipleStreamManager.py.

◆ Name

python.MultipleStreamManager.AugmentedStreamBase.Name
inherited

Definition at line 14 of file MultipleStreamManager.py.

◆ OtherAlgs

python.MultipleStreamManager.AugmentedStreamBase.OtherAlgs
inherited

Definition at line 15 of file MultipleStreamManager.py.

◆ parentIndex

python.MultipleStreamManager.AugmentedPoolStreamExtension.parentIndex

Definition at line 268 of file MultipleStreamManager.py.

◆ Stream

python.MultipleStreamManager.AugmentedPoolStream.Stream
inherited

Definition at line 171 of file MultipleStreamManager.py.


The documentation for this class was generated from the following file:
python.AlgSequence.AlgSequence
AlgSequence
Definition: PhysicsAnalysis/D3PDTools/AnaAlgorithm/python/AlgSequence.py:7
PrimaryDPDPrescaler
Definition: PrimaryDPDPrescaler.h:17
test_athena_ntuple_filter.AcceptAlgs
AcceptAlgs
Definition: test_athena_ntuple_filter.py:46
AthenaPoolExample_Write.RequireAlgs
RequireAlgs
Definition: AthenaPoolExample_Write.py:138
python.processes.powheg.ZZ.ZZ.__init__
def __init__(self, base_directory, **kwargs)
Constructor: all process options are set here.
Definition: ZZ.py:18
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
Muon::print
std::string print(const MuPatSegment &)
Definition: MuonTrackSteering.cxx:28
dqm_persistency::Print
void Print(const PParameter *param, TDirectory *topdir, Option_t *opt="")
Definition: dqm_persistency_impl.cxx:161