The Gaudi Framework  v38r0 (2143aa4c)
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

 evtSvc
 
 histSvc
 
 ntupleSvc
 
 evtSel
 
 detSvc
 
 toolSvc
 
 partSvc
 

Detailed Description

Definition at line 884 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 907 of file Bindings.py.

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

◆ __del__()

def GaudiPython.Bindings.AppMgr.__del__ (   self)

Definition at line 1331 of file Bindings.py.

1331  def __del__(self):
1332  self.exit()
1333 

Member Function Documentation

◆ __new__()

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

Definition at line 885 of file Bindings.py.

885  def __new__(cls, *args, **kwargs):
886  global _gaudi
887  if not _gaudi:
888  newobj = object.__new__(cls)
889  cls.__init__(newobj, *args, **kwargs)
890  _gaudi = newobj
891  return _gaudi
892 

◆ __reset__()

def GaudiPython.Bindings.AppMgr.__reset__ (   self)

Definition at line 893 of file Bindings.py.

893  def __reset__(self):
894  global _gaudi
895  # Stop, Finalize and Terminate the current AppMgr
896  self.exit()
897  # release interfaces
898  self._evtpro.release()
899  self._svcloc.release()
900  self._appmgr.release()
901  # Reset the C++ globals
902  gbl.Gaudi.setInstance(makeNullPointer("ISvcLocator"))
903  gbl.Gaudi.setInstance(makeNullPointer("IAppMgrUI"))
904  # Reset the Python global
905  _gaudi = None
906 

◆ 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 1130 of file Bindings.py.

1130  def addAlgorithm(self, alg):
1131  """Add an Algorithm to the list of Top algorithms. It can be either a instance of
1132  an Algorithm class or it name"""
1133  if type(alg) is str:
1134  self.topAlg += [alg]
1135  else:
1136  self.pyalgorithms.append(alg)
1137  setOwnership(alg, 0)
1138  if self.targetFSMState() >= Gaudi.StateMachine.INITIALIZED:
1139  alg.sysInitialize()
1140  if self.targetFSMState() == Gaudi.StateMachine.RUNNING:
1141  alg.sysStart()
1142  self.topAlg += [alg.name()]
1143 

◆ algorithm()

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

Definition at line 1060 of file Bindings.py.

1060  def algorithm(self, name, createIf=False):
1061  alg = Helper.algorithm(self._algmgr, name, createIf)
1062  if not alg:
1063  return iAlgorithm(name, alg)
1064  else:
1065  return iAlgorithm(alg.name(), alg)
1066 

◆ algorithms()

def GaudiPython.Bindings.AppMgr.algorithms (   self)

Definition at line 1067 of file Bindings.py.

1067  def algorithms(self):
1068  l = self._algmgr.getAlgorithms()
1069  return [a.name() for a in l]
1070 

◆ 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 1201 of file Bindings.py.

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

◆ configure()

def GaudiPython.Bindings.AppMgr.configure (   self)

Definition at line 1248 of file Bindings.py.

1248  def configure(self):
1249  return self._appmgr.configure()
1250 

◆ createSvc()

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

Definition at line 1053 of file Bindings.py.

1053  def createSvc(self, name):
1054  return Helper.service(self._svcloc, name, True)
1055 

◆ datasvc()

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

Definition at line 1082 of file Bindings.py.

1082  def datasvc(self, name):
1083  if self.state() == Gaudi.StateMachine.CONFIGURED:
1084  self.initialize()
1085  svc = Helper.service(self._svcloc, name)
1086  return iDataSvc(name, svc)
1087 

◆ declSvcType()

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

Definition at line 1050 of file Bindings.py.

1050  def declSvcType(self, svcname, svctype):
1051  self._svcmgr.declareSvcType(svcname, svctype)
1052 

◆ detsvc()

def GaudiPython.Bindings.AppMgr.detsvc (   self)

Definition at line 1093 of file Bindings.py.

1093  def detsvc(self):
1094  return self.datasvc("DetectorDataSvc")
1095 

◆ evtsel()

def GaudiPython.Bindings.AppMgr.evtsel (   self)

Definition at line 1099 of file Bindings.py.

1099  def evtsel(self):
1100  if self.state() == Gaudi.StateMachine.CONFIGURED:
1101  self.initialize()
1102  if not hasattr(self, "_evtsel"):
1103  self.__dict__["_evtsel"] = iEventSelector()
1104  return self._evtsel
1105 

◆ evtsvc()

def GaudiPython.Bindings.AppMgr.evtsvc (   self)

Definition at line 1088 of file Bindings.py.

1088  def evtsvc(self):
1089  svc = self.datasvc("EventDataSvc")
1090  svc.selectOnlyStore() # in case of GaudiHive, check there is a single store and selects it
1091  return svc
1092 

◆ execute()

def GaudiPython.Bindings.AppMgr.execute (   self)

Definition at line 1271 of file Bindings.py.

1271  def execute(self):
1272  return self._evtpro.executeEvent()
1273 

◆ executeEvent()

def GaudiPython.Bindings.AppMgr.executeEvent (   self)

Definition at line 1268 of file Bindings.py.

1268  def executeEvent(self):
1269  return self._evtpro.executeEvent()
1270 

◆ exit()

def GaudiPython.Bindings.AppMgr.exit (   self)

Definition at line 1316 of file Bindings.py.

1316  def exit(self):
1317  # Protection against multiple calls to exit() if the finalization fails
1318  if not self._exit_called:
1319  self.__dict__["_exit_called"] = True
1320  Gaudi = self._gaudi_ns
1321  if self.FSMState() == Gaudi.StateMachine.RUNNING:
1322  self._appmgr.stop().ignore()
1323  if self.FSMState() == Gaudi.StateMachine.INITIALIZED:
1324  self._appmgr.finalize().ignore()
1325  if self.FSMState() == Gaudi.StateMachine.CONFIGURED:
1326  self._appmgr.terminate()
1327  return SUCCESS
1328 

◆ filerecordsvc()

def GaudiPython.Bindings.AppMgr.filerecordsvc (   self)

Definition at line 1096 of file Bindings.py.

1096  def filerecordsvc(self):
1097  return self.datasvc("FileRecordDataSvc")
1098 

◆ FSMState()

def GaudiPython.Bindings.AppMgr.FSMState (   self)

Definition at line 1037 of file Bindings.py.

1037  def FSMState(self):
1038  return self._isvc.FSMState()
1039 

◆ histsvc()

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

Definition at line 1106 of file Bindings.py.

1106  def histsvc(self, name="HistogramDataSvc"):
1107  svc = Helper.service(self._svcloc, name)
1108  return iHistogramSvc(name, svc)
1109 

◆ ntuplesvc()

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

Definition at line 1110 of file Bindings.py.

1110  def ntuplesvc(self, name="NTupleSvc"):
1111  if name not in self.ExtSvc:
1112  self.ExtSvc += [name]
1113  # if self.HistogramPersistency == 'NONE' : self.HistogramPersistency = 'ROOT'
1114  svc = Helper.service(self._svcloc, name, True)
1115  return iNTupleSvc(name, svc)
1116 

◆ opts()

def GaudiPython.Bindings.AppMgr.opts (   self)

Definition at line 1029 of file Bindings.py.

1029  def opts(self):
1030  if "_svcloc" in self.__dict__:
1031  return self._svcloc.getOptsSvc()
1032  return None
1033 

◆ partsvc()

def GaudiPython.Bindings.AppMgr.partsvc (   self)

Definition at line 1117 of file Bindings.py.

1117  def partsvc(self):
1118  if self.FSMState() == Gaudi.StateMachine.CONFIGURED:
1119  self.initialize()
1120  svc = Helper.service(self._svcloc, "ParticlePropertySvc")
1121  return InterfaceCast(gbl.IParticlePropertySvc)(svc)
1122 

◆ printAlgsSequences()

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

Definition at line 1174 of file Bindings.py.

1174  def printAlgsSequences(self):
1175  """
1176  Print the sequence of Algorithms.
1177  """
1178 
1179  def printAlgo(algName, appMgr, prefix=" "):
1180  print(prefix + algName)
1181  alg = appMgr.algorithm(algName.split("/")[-1])
1182  prop = alg.properties()
1183  if "Members" in prop:
1184  subs = prop["Members"].value()
1185  for i in subs:
1186  printAlgo(i.strip('"'), appMgr, prefix + " ")
1187 
1188  mp = self.properties()
1189  prefix = "ApplicationMgr SUCCESS "
1190  print(
1191  prefix
1192  + "****************************** Algorithm Sequence ****************************"
1193  )
1194  for i in mp["TopAlg"].value():
1195  printAlgo(i, self, prefix)
1196  print(
1197  prefix
1198  + "******************************************************************************"
1199  )
1200 

◆ property()

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

Definition at line 1074 of file Bindings.py.

1074  def property(self, name):
1075  if name in self.algorithms():
1076  return self.algorithm(name)
1077  elif name in self.services():
1078  return self.service(name)
1079  else:
1080  return iProperty(name)
1081 

◆ readOptions()

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

Definition at line 1127 of file Bindings.py.

1127  def readOptions(self, file):
1128  return self.opts.readOptions(file)
1129 

◆ 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 1162 of file Bindings.py.

1162  def removeAlgorithm(self, alg):
1163  """Remove an Algorithm to the list of Top algorithms. It can be either a instance of
1164  an Algorithm class or it name"""
1165  tmp = self.topAlg
1166  if type(alg) is str:
1167  tmp.remove(alg)
1168  else:
1169  tmp.remove(alg.name())
1170  self.pyalgorithms.remove(alg)
1171  setOwnership(alg, 1)
1172  self.topAlg = tmp
1173 

◆ run()

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

Definition at line 1257 of file Bindings.py.

1257  def run(self, n):
1258  if self.FSMState() == Gaudi.StateMachine.CONFIGURED:
1259  sc = self.initialize()
1260  if sc.isFailure() or self.ReturnCode != 0:
1261  return sc
1262  if self.FSMState() == Gaudi.StateMachine.INITIALIZED:
1263  sc = self.start()
1264  if sc.isFailure() or self.ReturnCode != 0:
1265  return sc
1266  return self._evtpro.executeRun(n)
1267 

◆ runSelectedEvents()

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

Definition at line 1274 of file Bindings.py.

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

◆ service()

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

Definition at line 1043 of file Bindings.py.

1043  def service(self, name, interface=None):
1044  svc = Helper.service(self._svcloc, name)
1045  if interface:
1046  return InterfaceCast(interface)(svc)
1047  else:
1048  return iService(name, svc)
1049 

◆ services()

def GaudiPython.Bindings.AppMgr.services (   self)

Definition at line 1056 of file Bindings.py.

1056  def services(self):
1057  l = self._svcloc.getServices()
1058  return [s.name() for s in l]
1059 

◆ 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 1144 of file Bindings.py.

1144  def setAlgorithms(self, algs):
1145  """Set the list of Top Algorithms.
1146  It can be an individual of a list of algorithms names or instances"""
1147  if type(algs) is not list:
1148  algs = [algs]
1149  names = []
1150  for alg in algs:
1151  if type(alg) is str:
1152  names.append(alg)
1153  else:
1154  self.pyalgorithms.append(alg)
1155  if self.targetFSMState() >= Gaudi.StateMachine.INITIALIZED:
1156  alg.sysInitialize()
1157  if self.targetFSMState() == Gaudi.StateMachine.RUNNING:
1158  alg.sysStart()
1159  names.append(alg.name())
1160  self.topAlg = names
1161 

◆ start()

def GaudiPython.Bindings.AppMgr.start (   self)

Reimplemented from GaudiPython.Bindings.iService.

Definition at line 1251 of file Bindings.py.

1251  def start(self):
1252  return self._appmgr.start()
1253 

◆ state()

def GaudiPython.Bindings.AppMgr.state (   self)

Definition at line 1034 of file Bindings.py.

1034  def state(self):
1035  return self._isvc.FSMState()
1036 

◆ targetFSMState()

def GaudiPython.Bindings.AppMgr.targetFSMState (   self)

Definition at line 1040 of file Bindings.py.

1040  def targetFSMState(self):
1041  return self._isvc.targetFSMState()
1042 

◆ terminate()

def GaudiPython.Bindings.AppMgr.terminate (   self)

Definition at line 1254 of file Bindings.py.

1254  def terminate(self):
1255  return self._appmgr.terminate()
1256 

◆ tool()

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

Definition at line 1071 of file Bindings.py.

1071  def tool(self, name):
1072  return iAlgTool(name)
1073 

◆ toolsvc()

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

Definition at line 1123 of file Bindings.py.

1123  def toolsvc(self, name="ToolSvc"):
1124  svc = Helper.service(self._svcloc, name, True)
1125  return iToolSvc(name, svc)
1126 

Member Data Documentation

◆ detSvc

GaudiPython.Bindings.AppMgr.detSvc
static

Definition at line 1338 of file Bindings.py.

◆ evtSel

GaudiPython.Bindings.AppMgr.evtSel
static

Definition at line 1337 of file Bindings.py.

◆ evtSvc

GaudiPython.Bindings.AppMgr.evtSvc
static

Definition at line 1334 of file Bindings.py.

◆ histSvc

GaudiPython.Bindings.AppMgr.histSvc
static

Definition at line 1335 of file Bindings.py.

◆ JobOptionsType

GaudiPython.Bindings.AppMgr.JobOptionsType

Definition at line 938 of file Bindings.py.

◆ ntupleSvc

GaudiPython.Bindings.AppMgr.ntupleSvc
static

Definition at line 1336 of file Bindings.py.

◆ OutputLevel

GaudiPython.Bindings.AppMgr.OutputLevel

Definition at line 949 of file Bindings.py.

◆ partSvc

GaudiPython.Bindings.AppMgr.partSvc
static

Definition at line 1340 of file Bindings.py.

◆ toolSvc

GaudiPython.Bindings.AppMgr.toolSvc
static

Definition at line 1339 of file Bindings.py.

◆ topAlg

GaudiPython.Bindings.AppMgr.topAlg

Definition at line 1160 of file Bindings.py.


The documentation for this class was generated from the following file:
GaudiPython.Bindings.makeNullPointer
makeNullPointer
Definition: Bindings.py:129
Histograms_with_global.algorithms
algorithms
Definition: Histograms_with_global.py:19
GaudiAlg.Algs.iAlgTool
iAlgTool
Definition: Algs.py:67
conf.release
string release
Definition: conf.py:27
GaudiPartProp.Service.InterfaceCast
InterfaceCast
Definition: Service.py:39
GaudiPython.Bindings.setOwnership
setOwnership
Definition: Bindings.py:130
IOTest.start
start
Definition: IOTest.py:108
GaudiAlg.Algs.iAlgorithm
iAlgorithm
Definition: Algs.py:66
GaudiKernel.Proxy.getNeededConfigurables
getNeededConfigurables
Definition: Proxy.py:30
prepareBenchmark.config
config
Definition: prepareBenchmark.py:43
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:578
GaudiPython.Pythonizations.executeEvent
executeEvent
Helpers for re-entrant interfaces.
Definition: Pythonizations.py:574
GaudiKernel.ProcessJobOptions.importOptions
def importOptions(optsfile)
Definition: ProcessJobOptions.py:541
GaudiPython.Bindings._getFIDandEvents
def _getFIDandEvents(pfn)
Definition: Bindings.py:1346
gaudirun.type
type
Definition: gaudirun.py:160
ExtendedProperties.configure
def configure(gaudi=None)
Definition: ExtendedProperties.py:39
GaudiPartProp.Service.iService
iService
Definition: Service.py:37
compareRootHistos.state
state
Definition: compareRootHistos.py:496
GaudiKernel.Configurable.expandvars
def expandvars(data)
Definition: Configurable.py:76