The Gaudi Framework  v36r9p1 (5c15b2bb)
GaudiPython.Bindings.AppMgr Class Reference
Inheritance diagram for GaudiPython.Bindings.AppMgr:
Collaboration diagram for GaudiPython.Bindings.AppMgr:

Public Member Functions

def __new__ (cls, *args, **kwargs)
 
def __reset__ (self)
 
def __init__ (self, outputlevel=-1, joboptions=None, selfoptions={}, dllname=None, factname=None)
 
def opts (self)
 
def state (self)
 
def FSMState (self)
 
def targetFSMState (self)
 
def service (self, name, interface=None)
 
def declSvcType (self, svcname, svctype)
 
def createSvc (self, name)
 
def services (self)
 
def algorithm (self, name, createIf=False)
 
def algorithms (self)
 
def tool (self, name)
 
def property (self, name)
 
def datasvc (self, name)
 
def evtsvc (self)
 
def detsvc (self)
 
def filerecordsvc (self)
 
def evtsel (self)
 
def histsvc (self, name="HistogramDataSvc")
 
def ntuplesvc (self, name="NTupleSvc")
 
def partsvc (self)
 
def toolsvc (self, name="ToolSvc")
 
def readOptions (self, file)
 
def addAlgorithm (self, alg)
 
def setAlgorithms (self, algs)
 
def removeAlgorithm (self, alg)
 
def printAlgsSequences (self)
 
def config (self, **args)
 
def configure (self)
 
def start (self)
 
def terminate (self)
 
def run (self, n)
 
def executeEvent (self)
 
def execute (self)
 
def runSelectedEvents (self, pfn, events)
 
def exit (self)
 
def __del__ (self)
 
- Public Member Functions inherited from GaudiPython.Bindings.iService
def __init__ (self, name, isvc=cppyy.nullptr)
 
def retrieveInterface (self)
 
def initialize (self)
 
def stop (self)
 
def finalize (self)
 
def reinitialize (self)
 
def restart (self)
 
def isValid (self)
 
- Public Member Functions inherited from GaudiPython.Bindings.iProperty
def getInterface (self)
 
def __call_interface_method__ (self, ifname, method, *args)
 
def __setattr__ (self, name, value)
 
def __getattr__ (self, name)
 
def properties (self)
 
def name (self)
 

Public Attributes

 JobOptionsType
 
 OutputLevel
 
 topAlg
 

Static Public Attributes

def evtSvc = evtsvc
 
def histSvc = histsvc
 
def ntupleSvc = ntuplesvc
 
def evtSel = evtsel
 
def detSvc = detsvc
 
def toolSvc = toolsvc
 
def partSvc = partsvc
 

Detailed Description

Definition at line 873 of file Bindings.py.

Constructor & Destructor Documentation

◆ __init__()

def GaudiPython.Bindings.AppMgr.__init__ (   self,
  outputlevel = -1,
  joboptions = None,
  selfoptions = {},
  dllname = None,
  factname = None 
)

Definition at line 896 of file Bindings.py.

896  def __init__(
897  self,
898  outputlevel=-1,
899  joboptions=None,
900  selfoptions={},
901  dllname=None,
902  factname=None,
903  ):
904  global _gaudi
905  if _gaudi:
906  return
907  # Make sure the python stdout buffer is flushed before c++ runs
908  sys.stdout.flush()
909  # Protection against multiple calls to exit() if the finalization fails
910  self.__dict__["_exit_called"] = False
911  # keep the Gaudi namespace around (so it is still available during atexit shutdown)...
912  self.__dict__["_gaudi_ns"] = Gaudi
913  try:
914  from GaudiKernel.Proxy.Configurable import expandvars
915  except ImportError:
916  # pass-through implementation if expandvars is not defined (AthenaCommon)
917  def expandvars(data):
918  return data
919 
920  if dllname and factname:
921  self.__dict__["_appmgr"] = gbl.Gaudi.createApplicationMgr(dllname, factname)
922  elif dllname:
923  self.__dict__["_appmgr"] = gbl.Gaudi.createApplicationMgr(dllname)
924  else:
925  self.__dict__["_appmgr"] = gbl.Gaudi.createApplicationMgr()
926  self.__dict__["_svcloc"] = gbl.Gaudi.svcLocator()
927  self.__dict__["_algmgr"] = InterfaceCast(gbl.IAlgManager)(self._appmgr)
928  self.__dict__["_evtpro"] = InterfaceCast(gbl.IEventProcessor)(self._appmgr)
929  self.__dict__["_svcmgr"] = InterfaceCast(gbl.ISvcManager)(self._appmgr)
930  self.__dict__["pyalgorithms"] = []
931  iService.__init__(self, "ApplicationMgr", self._appmgr)
932  # ------python specific initialization-------------------------------------
933  if self.FSMState() < Gaudi.StateMachine.CONFIGURED: # Not yet configured
934  self.JobOptionsType = "NONE"
935  if joboptions:
936  from GaudiKernel.ProcessJobOptions import importOptions
937 
938  importOptions(joboptions)
939  # Ensure that the ConfigurableUser instances have been applied
940  import GaudiKernel.Proxy.Configurable
941 
942  if hasattr(GaudiKernel.Proxy.Configurable, "applyConfigurableUsers"):
943  GaudiKernel.Proxy.Configurable.applyConfigurableUsers()
944  # This is the default and could be overridden with "selfopts"
945  self.OutputLevel = 3
946  try:
947  appMgr = Configurable.allConfigurables["ApplicationMgr"]
948  selfprops = expandvars(appMgr.getValuedProperties())
949  except KeyError:
950  selfprops = {}
951  for p, v in selfprops.items():
952  setattr(self, p, v)
953  for p, v in selfoptions.items():
954  setattr(self, p, v)
955  # Override job options
956  if outputlevel != -1:
957  self.OutputLevel = outputlevel
958  self.configure()
959  # ---MessageSvc------------------------------------------------------------
960  ms = self.service("MessageSvc")
961  if "MessageSvc" in Configurable.allConfigurables:
962  msprops = Configurable.allConfigurables["MessageSvc"]
963  ms = self.service("MessageSvc")
964  if hasattr(msprops, "getValuedProperties"):
965  msprops = expandvars(msprops.getValuedProperties())
966  for p, v in msprops.items():
967  setattr(ms, p, v)
968  if outputlevel != -1:
969  ms.OutputLevel = outputlevel
970  # ------Configurables initialization (part2)-------------------------------
971  for n in getNeededConfigurables():
972  c = Configurable.allConfigurables[n]
973  if n in ["ApplicationMgr", "MessageSvc"]:
974  continue # These are already done---
975  for p, v in c.getValuedProperties().items():
976  v = expandvars(v)
977  # Note: AthenaCommon.Configurable does not have Configurable.PropertyReference
978  if (
979  hasattr(Configurable, "PropertyReference")
980  and type(v) == Configurable.PropertyReference
981  ):
982  # this is done in "getFullName", but the exception is ignored,
983  # so we do it again to get it
984  v = v.__resolve__()
985  if type(v) == str:
986  v = repr(v) # need double quotes
987  if type(v) == long:
988  v = "%d" % v # prevent pending 'L'
989  gbl.GaudiPython.Helpers.setProperty(
990  self._svcloc, ".".join([n, p]), str(v)
991  )
992  if hasattr(Configurable, "_configurationLocked"):
993  Configurable._configurationLocked = True
994 
995  # Ensure that the exit method is called when exiting from Python
996  import atexit
997 
998  atexit.register(self.exit)
999 
1000  # ---Hack to avoid bad interactions with the ROOT exit handler
1001  # let's install a private version of atexit.register that detects when
1002  # the ROOT exit handler is installed and adds our own after it to ensure
1003  # it is called before.
1004  orig_register = atexit.register
1005 
1006  def register(func, *targs, **kargs):
1007  orig_register(func, *targs, **kargs)
1008  if hasattr(func, "__module__") and func.__module__ == "ROOT":
1009  orig_register(self.exit)
1010  # we do not need to remove out handler from the list because
1011  # it can be safely called more than once
1012 
1013  register.__doc__ = (
1014  orig_register.__doc__
1015  + "\nNote: version hacked by GaudiPython to work "
1016  + "around a problem with the ROOT exit handler"
1017  )
1018  atexit.register = register
1019 

◆ __del__()

def GaudiPython.Bindings.AppMgr.__del__ (   self)

Definition at line 1321 of file Bindings.py.

1321  def __del__(self):
1322  self.exit()
1323 

Member Function Documentation

◆ __new__()

def GaudiPython.Bindings.AppMgr.__new__ (   cls,
args,
**  kwargs 
)

Definition at line 874 of file Bindings.py.

874  def __new__(cls, *args, **kwargs):
875  global _gaudi
876  if not _gaudi:
877  newobj = object.__new__(cls)
878  cls.__init__(newobj, *args, **kwargs)
879  _gaudi = newobj
880  return _gaudi
881 

◆ __reset__()

def GaudiPython.Bindings.AppMgr.__reset__ (   self)

Definition at line 882 of file Bindings.py.

882  def __reset__(self):
883  global _gaudi
884  # Stop, Finalize and Terminate the current AppMgr
885  self.exit()
886  # release interfaces
887  self._evtpro.release()
888  self._svcloc.release()
889  self._appmgr.release()
890  # Reset the C++ globals
891  gbl.Gaudi.setInstance(makeNullPointer("ISvcLocator"))
892  gbl.Gaudi.setInstance(makeNullPointer("IAppMgrUI"))
893  # Reset the Python global
894  _gaudi = None
895 

◆ addAlgorithm()

def GaudiPython.Bindings.AppMgr.addAlgorithm (   self,
  alg 
)
Add an Algorithm to the list of Top algorithms. It can be either a instance of
an Algorithm class or it name

Definition at line 1120 of file Bindings.py.

1120  def addAlgorithm(self, alg):
1121  """Add an Algorithm to the list of Top algorithms. It can be either a instance of
1122  an Algorithm class or it name"""
1123  if type(alg) is str:
1124  self.topAlg += [alg]
1125  else:
1126  self.pyalgorithms.append(alg)
1127  setOwnership(alg, 0)
1128  if self.targetFSMState() >= Gaudi.StateMachine.INITIALIZED:
1129  alg.sysInitialize()
1130  if self.targetFSMState() == Gaudi.StateMachine.RUNNING:
1131  alg.sysStart()
1132  self.topAlg += [alg.name()]
1133 

◆ algorithm()

def GaudiPython.Bindings.AppMgr.algorithm (   self,
  name,
  createIf = False 
)

Definition at line 1052 of file Bindings.py.

1052  def algorithm(self, name, createIf=False):
1053  alg = Helper.algorithm(self._algmgr, name, createIf)
1054  if not alg:
1055  return iAlgorithm(name, alg)
1056  else:
1057  return iAlgorithm(alg.name(), alg)
1058 

◆ algorithms()

def GaudiPython.Bindings.AppMgr.algorithms (   self)

Definition at line 1059 of file Bindings.py.

1059  def algorithms(self):
1060  l = self._algmgr.getAlgorithms()
1061  return [a.name() for a in l]
1062 

◆ config()

def GaudiPython.Bindings.AppMgr.config (   self,
**  args 
)
Simple utility to perform the configuration of Gaudi application.
It reads the set of input job-options files, and set few
additional parameters 'options' through the usage of temporary *.opts file
Usage:
gaudi.config( files   = [ '$GAUSSOPTS/Gauss.opts'                     ,
                  '$DECFILESROOT/options/10022_010.0GeV.opts' ] ,
      options = [ 'EventSelector.PrintFreq   =   5  '         ] )

Definition at line 1191 of file Bindings.py.

1191  def config(self, **args):
1192  """
1193  Simple utility to perform the configuration of Gaudi application.
1194  It reads the set of input job-options files, and set few
1195  additional parameters 'options' through the usage of temporary *.opts file
1196  Usage:
1197  gaudi.config( files = [ '$GAUSSOPTS/Gauss.opts' ,
1198  '$DECFILESROOT/options/10022_010.0GeV.opts' ] ,
1199  options = [ 'EventSelector.PrintFreq = 5 ' ] )
1200  """
1201  files = args.get("files", [])
1202  for file in files:
1203  sc = self.readOptions(file)
1204  if sc.isFailure():
1205  raise RuntimeError(' Unable to read file "' + file + '" ')
1206  options = args.get("options", None)
1207  if options:
1208  import tempfile
1209 
1210  tmpfilename = tempfile.mktemp()
1211  tmpfile = open(tmpfilename, "w")
1212  tmpfile.write("#pragma print on \n")
1213  tmpfile.write(
1214  '/// File "' + tmpfilename + '" generated by GaudiPython \n\n'
1215  )
1216  for opt in options:
1217  if type(options) is dict:
1218  tmpfile.write(
1219  " \t "
1220  + opt
1221  + " = "
1222  + options[opt]
1223  + " ; // added by GaudiPython \n"
1224  )
1225  else:
1226  tmpfile.write(" \t " + opt + " ; // added by GaudiPython \n")
1227  tmpfile.write(
1228  '/// End of file "' + tmpfilename + '" generated by GaudiPython \n\n'
1229  )
1230  tmpfile.close()
1231  sc = self.readOptions(tmpfilename)
1232  if sc.isFailure():
1233  raise RuntimeError(' Unable to read file "' + tmpfilename + '" ')
1234  os.remove(tmpfilename)
1235 
1236  return SUCCESS
1237 

◆ configure()

def GaudiPython.Bindings.AppMgr.configure (   self)

Definition at line 1238 of file Bindings.py.

1238  def configure(self):
1239  return self._appmgr.configure()
1240 

◆ createSvc()

def GaudiPython.Bindings.AppMgr.createSvc (   self,
  name 
)

Definition at line 1045 of file Bindings.py.

1045  def createSvc(self, name):
1046  return Helper.service(self._svcloc, name, True)
1047 

◆ datasvc()

def GaudiPython.Bindings.AppMgr.datasvc (   self,
  name 
)

Definition at line 1074 of file Bindings.py.

1074  def datasvc(self, name):
1075  if self.state() == Gaudi.StateMachine.CONFIGURED:
1076  self.initialize()
1077  svc = Helper.service(self._svcloc, name)
1078  return iDataSvc(name, svc)
1079 

◆ declSvcType()

def GaudiPython.Bindings.AppMgr.declSvcType (   self,
  svcname,
  svctype 
)

Definition at line 1042 of file Bindings.py.

1042  def declSvcType(self, svcname, svctype):
1043  self._svcmgr.declareSvcType(svcname, svctype)
1044 

◆ detsvc()

def GaudiPython.Bindings.AppMgr.detsvc (   self)

Definition at line 1083 of file Bindings.py.

1083  def detsvc(self):
1084  return self.datasvc("DetectorDataSvc")
1085 

◆ evtsel()

def GaudiPython.Bindings.AppMgr.evtsel (   self)

Definition at line 1089 of file Bindings.py.

1089  def evtsel(self):
1090  if self.state() == Gaudi.StateMachine.CONFIGURED:
1091  self.initialize()
1092  if not hasattr(self, "_evtsel"):
1093  self.__dict__["_evtsel"] = iEventSelector()
1094  return self._evtsel
1095 

◆ evtsvc()

def GaudiPython.Bindings.AppMgr.evtsvc (   self)

Definition at line 1080 of file Bindings.py.

1080  def evtsvc(self):
1081  return self.datasvc("EventDataSvc")
1082 

◆ execute()

def GaudiPython.Bindings.AppMgr.execute (   self)

Definition at line 1261 of file Bindings.py.

1261  def execute(self):
1262  return self._evtpro.executeEvent()
1263 

◆ executeEvent()

def GaudiPython.Bindings.AppMgr.executeEvent (   self)

Definition at line 1258 of file Bindings.py.

1258  def executeEvent(self):
1259  return self._evtpro.executeEvent()
1260 

◆ exit()

def GaudiPython.Bindings.AppMgr.exit (   self)

Definition at line 1306 of file Bindings.py.

1306  def exit(self):
1307  # Protection against multiple calls to exit() if the finalization fails
1308  if not self._exit_called:
1309  self.__dict__["_exit_called"] = True
1310  Gaudi = self._gaudi_ns
1311  if self.FSMState() == Gaudi.StateMachine.RUNNING:
1312  self._appmgr.stop().ignore()
1313  if self.FSMState() == Gaudi.StateMachine.INITIALIZED:
1314  self._appmgr.finalize().ignore()
1315  if self.FSMState() == Gaudi.StateMachine.CONFIGURED:
1316  self._appmgr.terminate()
1317  return SUCCESS
1318 

◆ filerecordsvc()

def GaudiPython.Bindings.AppMgr.filerecordsvc (   self)

Definition at line 1086 of file Bindings.py.

1086  def filerecordsvc(self):
1087  return self.datasvc("FileRecordDataSvc")
1088 

◆ FSMState()

def GaudiPython.Bindings.AppMgr.FSMState (   self)

Definition at line 1029 of file Bindings.py.

1029  def FSMState(self):
1030  return self._isvc.FSMState()
1031 

◆ histsvc()

def GaudiPython.Bindings.AppMgr.histsvc (   self,
  name = "HistogramDataSvc" 
)

Definition at line 1096 of file Bindings.py.

1096  def histsvc(self, name="HistogramDataSvc"):
1097  svc = Helper.service(self._svcloc, name)
1098  return iHistogramSvc(name, svc)
1099 

◆ ntuplesvc()

def GaudiPython.Bindings.AppMgr.ntuplesvc (   self,
  name = "NTupleSvc" 
)

Definition at line 1100 of file Bindings.py.

1100  def ntuplesvc(self, name="NTupleSvc"):
1101  if name not in self.ExtSvc:
1102  self.ExtSvc += [name]
1103  # if self.HistogramPersistency == 'NONE' : self.HistogramPersistency = 'ROOT'
1104  svc = Helper.service(self._svcloc, name, True)
1105  return iNTupleSvc(name, svc)
1106 

◆ opts()

def GaudiPython.Bindings.AppMgr.opts (   self)

Definition at line 1021 of file Bindings.py.

1021  def opts(self):
1022  if "_svcloc" in self.__dict__:
1023  return self._svcloc.getOptsSvc()
1024  return None
1025 

◆ partsvc()

def GaudiPython.Bindings.AppMgr.partsvc (   self)

Definition at line 1107 of file Bindings.py.

1107  def partsvc(self):
1108  if self.FSMState() == Gaudi.StateMachine.CONFIGURED:
1109  self.initialize()
1110  svc = Helper.service(self._svcloc, "ParticlePropertySvc")
1111  return InterfaceCast(gbl.IParticlePropertySvc)(svc)
1112 

◆ printAlgsSequences()

def GaudiPython.Bindings.AppMgr.printAlgsSequences (   self)
Print the sequence of Algorithms.

Definition at line 1164 of file Bindings.py.

1164  def printAlgsSequences(self):
1165  """
1166  Print the sequence of Algorithms.
1167  """
1168 
1169  def printAlgo(algName, appMgr, prefix=" "):
1170  print(prefix + algName)
1171  alg = appMgr.algorithm(algName.split("/")[-1])
1172  prop = alg.properties()
1173  if "Members" in prop:
1174  subs = prop["Members"].value()
1175  for i in subs:
1176  printAlgo(i.strip('"'), appMgr, prefix + " ")
1177 
1178  mp = self.properties()
1179  prefix = "ApplicationMgr SUCCESS "
1180  print(
1181  prefix
1182  + "****************************** Algorithm Sequence ****************************"
1183  )
1184  for i in mp["TopAlg"].value():
1185  printAlgo(i, self, prefix)
1186  print(
1187  prefix
1188  + "******************************************************************************"
1189  )
1190 

◆ property()

def GaudiPython.Bindings.AppMgr.property (   self,
  name 
)

Definition at line 1066 of file Bindings.py.

1066  def property(self, name):
1067  if name in self.algorithms():
1068  return self.algorithm(name)
1069  elif name in self.services():
1070  return self.service(name)
1071  else:
1072  return iProperty(name)
1073 

◆ readOptions()

def GaudiPython.Bindings.AppMgr.readOptions (   self,
  file 
)

Definition at line 1117 of file Bindings.py.

1117  def readOptions(self, file):
1118  return self.opts.readOptions(file)
1119 

◆ removeAlgorithm()

def GaudiPython.Bindings.AppMgr.removeAlgorithm (   self,
  alg 
)
Remove an Algorithm to the list of Top algorithms. It can be either a instance of
an Algorithm class or it name

Definition at line 1152 of file Bindings.py.

1152  def removeAlgorithm(self, alg):
1153  """Remove an Algorithm to the list of Top algorithms. It can be either a instance of
1154  an Algorithm class or it name"""
1155  tmp = self.topAlg
1156  if type(alg) is str:
1157  tmp.remove(alg)
1158  else:
1159  tmp.remove(alg.name())
1160  self.pyalgorithms.remove(alg)
1161  setOwnership(alg, 1)
1162  self.topAlg = tmp
1163 

◆ run()

def GaudiPython.Bindings.AppMgr.run (   self,
  n 
)

Definition at line 1247 of file Bindings.py.

1247  def run(self, n):
1248  if self.FSMState() == Gaudi.StateMachine.CONFIGURED:
1249  sc = self.initialize()
1250  if sc.isFailure() or self.ReturnCode != 0:
1251  return sc
1252  if self.FSMState() == Gaudi.StateMachine.INITIALIZED:
1253  sc = self.start()
1254  if sc.isFailure() or self.ReturnCode != 0:
1255  return sc
1256  return self._evtpro.executeRun(n)
1257 

◆ runSelectedEvents()

def GaudiPython.Bindings.AppMgr.runSelectedEvents (   self,
  pfn,
  events 
)

Definition at line 1264 of file Bindings.py.

1264  def runSelectedEvents(self, pfn, events):
1265  if self.FSMState() == Gaudi.StateMachine.CONFIGURED:
1266  sc = self.initialize()
1267  if sc.isFailure():
1268  return sc
1269  if self.FSMState() == Gaudi.StateMachine.INITIALIZED:
1270  sc = self.start()
1271  if sc.isFailure():
1272  return sc
1273  # --- Access a number of services ----
1274  if not hasattr(self, "_perssvc"):
1275  self.__dict__["_perssvc"] = self.service(
1276  "EventPersistencySvc", "IAddressCreator"
1277  )
1278  if not hasattr(self, "_filecat"):
1279  self.__dict__["_filecat"] = self.service(
1280  "FileCatalog", "Gaudi::IFileCatalog"
1281  )
1282  if not hasattr(self, "_evtmgr"):
1283  self.__dict__["_evtmgr"] = self.service("EventDataSvc", "IDataManagerSvc")
1284  # --- Get FID from PFN and number of events in file
1285  if pfn.find("PFN:") == 0:
1286  pfn = pfn[4:]
1287  fid, maxevt = _getFIDandEvents(pfn)
1288  # --- Add FID into catalog if needed ---
1289  if not self._filecat.existsFID(fid):
1290  self._filecat.registerPFN(fid, pfn, "")
1291  # --- Loop over events
1292  if type(events) is not list:
1293  events = (events,)
1294  for evt in events:
1295  # --- Create POOL Address from Generic Address
1296  gadd = gbl.GenericAddress(0x02, 1, fid, "/Event", 0, evt)
1297  oadd = makeNullPointer("IOpaqueAddress")
1298  self._perssvc.createAddress(
1299  gadd.svcType(), gadd.clID(), gadd.par(), gadd.ipar(), oadd
1300  )
1301  # --- Clear TES, set root and run all algorithms
1302  self._evtmgr.clearStore()
1303  self._evtmgr.setRoot("/Event", oadd)
1304  self._evtpro.executeEvent()
1305 

◆ service()

def GaudiPython.Bindings.AppMgr.service (   self,
  name,
  interface = None 
)

Definition at line 1035 of file Bindings.py.

1035  def service(self, name, interface=None):
1036  svc = Helper.service(self._svcloc, name)
1037  if interface:
1038  return InterfaceCast(interface)(svc)
1039  else:
1040  return iService(name, svc)
1041 

◆ services()

def GaudiPython.Bindings.AppMgr.services (   self)

Definition at line 1048 of file Bindings.py.

1048  def services(self):
1049  l = self._svcloc.getServices()
1050  return [s.name() for s in l]
1051 

◆ setAlgorithms()

def GaudiPython.Bindings.AppMgr.setAlgorithms (   self,
  algs 
)
Set the list of Top Algorithms.
It can be an individual of a list of algorithms names or instances

Definition at line 1134 of file Bindings.py.

1134  def setAlgorithms(self, algs):
1135  """Set the list of Top Algorithms.
1136  It can be an individual of a list of algorithms names or instances"""
1137  if type(algs) is not list:
1138  algs = [algs]
1139  names = []
1140  for alg in algs:
1141  if type(alg) is str:
1142  names.append(alg)
1143  else:
1144  self.pyalgorithms.append(alg)
1145  if self.targetFSMState() >= Gaudi.StateMachine.INITIALIZED:
1146  alg.sysInitialize()
1147  if self.targetFSMState() == Gaudi.StateMachine.RUNNING:
1148  alg.sysStart()
1149  names.append(alg.name())
1150  self.topAlg = names
1151 

◆ start()

def GaudiPython.Bindings.AppMgr.start (   self)

Reimplemented from GaudiPython.Bindings.iService.

Definition at line 1241 of file Bindings.py.

1241  def start(self):
1242  return self._appmgr.start()
1243 

◆ state()

def GaudiPython.Bindings.AppMgr.state (   self)

Definition at line 1026 of file Bindings.py.

1026  def state(self):
1027  return self._isvc.FSMState()
1028 

◆ targetFSMState()

def GaudiPython.Bindings.AppMgr.targetFSMState (   self)

Definition at line 1032 of file Bindings.py.

1032  def targetFSMState(self):
1033  return self._isvc.targetFSMState()
1034 

◆ terminate()

def GaudiPython.Bindings.AppMgr.terminate (   self)

Definition at line 1244 of file Bindings.py.

1244  def terminate(self):
1245  return self._appmgr.terminate()
1246 

◆ tool()

def GaudiPython.Bindings.AppMgr.tool (   self,
  name 
)

Definition at line 1063 of file Bindings.py.

1063  def tool(self, name):
1064  return iAlgTool(name)
1065 

◆ toolsvc()

def GaudiPython.Bindings.AppMgr.toolsvc (   self,
  name = "ToolSvc" 
)

Definition at line 1113 of file Bindings.py.

1113  def toolsvc(self, name="ToolSvc"):
1114  svc = Helper.service(self._svcloc, name, True)
1115  return iToolSvc(name, svc)
1116 

Member Data Documentation

◆ detSvc

def GaudiPython.Bindings.AppMgr.detSvc = detsvc
static

Definition at line 1328 of file Bindings.py.

◆ evtSel

def GaudiPython.Bindings.AppMgr.evtSel = evtsel
static

Definition at line 1327 of file Bindings.py.

◆ evtSvc

def GaudiPython.Bindings.AppMgr.evtSvc = evtsvc
static

Definition at line 1324 of file Bindings.py.

◆ histSvc

def GaudiPython.Bindings.AppMgr.histSvc = histsvc
static

Definition at line 1325 of file Bindings.py.

◆ JobOptionsType

GaudiPython.Bindings.AppMgr.JobOptionsType

Definition at line 927 of file Bindings.py.

◆ ntupleSvc

def GaudiPython.Bindings.AppMgr.ntupleSvc = ntuplesvc
static

Definition at line 1326 of file Bindings.py.

◆ OutputLevel

GaudiPython.Bindings.AppMgr.OutputLevel

Definition at line 938 of file Bindings.py.

◆ partSvc

def GaudiPython.Bindings.AppMgr.partSvc = partsvc
static

Definition at line 1330 of file Bindings.py.

◆ toolSvc

def GaudiPython.Bindings.AppMgr.toolSvc = toolsvc
static

Definition at line 1329 of file Bindings.py.

◆ topAlg

GaudiPython.Bindings.AppMgr.topAlg

Definition at line 1150 of file Bindings.py.


The documentation for this class was generated from the following file:
GaudiPython.Bindings.makeNullPointer
makeNullPointer
Definition: Bindings.py:135
Aida2RootEx.configure
def configure(gaudi=None)
Definition: Aida2RootEx.py:126
conf.release
string release
Definition: conf.py:28
prepareBenchmark.config
def config
Definition: prepareBenchmark.py:47
GaudiPython.Bindings.setOwnership
setOwnership
Definition: Bindings.py:136
GaudiPython.GaudiAlgs.iAlgorithm
iAlgorithm
Definition: GaudiAlgs.py:67
GaudiKernel.Proxy.getNeededConfigurables
getNeededConfigurables
Definition: Proxy.py:30
bug_34121.tool
tool
Definition: bug_34121.py:17
gaudirun.opts
opts
Definition: gaudirun.py:336
GaudiKernel.ProcessJobOptions
Definition: ProcessJobOptions.py:1
GaudiPython.Pythonizations.execute
execute
Definition: Pythonizations.py:588
Histograms_with_global.algorithms
list algorithms
Definition: Histograms_with_global.py:19
GaudiPython.Pythonizations.executeEvent
executeEvent
Helpers for re-entrant interfaces.
Definition: Pythonizations.py:584
GaudiPython.GaudiAlgs.iAlgTool
iAlgTool
Definition: GaudiAlgs.py:68
GaudiKernel.ProcessJobOptions.importOptions
def importOptions(optsfile)
Definition: ProcessJobOptions.py:541
GaudiPython.Bindings._getFIDandEvents
def _getFIDandEvents(pfn)
Definition: Bindings.py:1336
gaudirun.type
type
Definition: gaudirun.py:160
compareRootHistos.state
def state
Definition: compareRootHistos.py:500
IOTest.start
def start
Definition: IOTest.py:113
GaudiKernel.Configurable.expandvars
def expandvars(data)
Definition: Configurable.py:73
GaudiPython.Pythonizations.items
items
Definition: Pythonizations.py:546