Gaudi Framework, version v20r4

Generated: 8 Jan 2009

GaudiPython::Bindings Namespace Reference


Classes

class  InterfaceCast
class  Interface
class  PropertyEntry
class  iProperty
class  iService
class  iAlgorithm
class  iAlgTool
class  iDataSvc
class  iHistogramSvc
class  iNTupleSvc
class  iToolSvc
class  iJobOptSvc
class  iEventSelector
class  AppMgr
class  CallbackStreamBuf
class  PyAlgorithm

Functions

def deprecation
def loaddict
def getClass
def getComponentProperties
def _copyFactoriesFromList
def _atexit_

Variables

list __all__
tuple gbl = PyCintex.makeNamespace('')
 Gaudi = gbl.Gaudi
 _gaudi = None
 Helper = gbl.GaudiPython.Helper
tuple StringProperty = gbl.SimpleProperty('string','BoundedVerifier<string>')
tuple StringPropertyRef = gbl.SimplePropertyRef('string','NullVerifier<string>')
 GaudiHandleProperty = gbl.GaudiHandleProperty
 GaudiHandleArrayProperty = gbl.GaudiHandleArrayProperty
 DataObject = gbl.DataObject
tuple SUCCESS = gbl.StatusCode( gbl.StatusCode.SUCCESS, True )
tuple FAILURE = gbl.StatusCode( gbl.StatusCode.FAILURE, True )
tuple toArray = lambdatyp:getattr(Helper,"toArray")
 ROOT = PyCintex.libPyROOT
 makeNullPointer = PyCintex.libPyROOT.MakeNullPointer
 makeClass = PyCintex.libPyROOT.MakeRootClass
 setOwnership = PyCintex.libPyROOT.SetOwnership
 _CallbackStreamBufBase = gbl.GaudiPython.CallbackStreamBuf
 _PyAlgorithm = gbl.GaudiPython.PyAlgorithm


Function Documentation

def GaudiPython::Bindings::_atexit_ (  )  [private]

Definition at line 930 of file Bindings.py.

00930                :
00931   if _gaudi :
00932     state = _gaudi.FSMState()
00933     if state in [ Gaudi.StateMachine.CONFIGURED, Gaudi.StateMachine.INITIALIZED,
00934                   Gaudi.StateMachine.RUNNING ]:
00935         _gaudi.exit()
00936 atexit.register( _atexit_ )
00937   
00938 #----Enable tab completion------------------------------------------------------------
00939 try:
00940   import rlcompleter,readline    
00941   readline.parse_and_bind("tab: complete")
00942 except:
00943   pass
00944 

def GaudiPython::Bindings::_copyFactoriesFromList (   factories  )  [private]

Definition at line 882 of file Bindings.py.

00882                                       :
00883   result = []
00884   for i in range(factories.size()) :
00885     factory = factories.front()
00886     result.append(factory)
00887     factories.pop_front()
00888   for factory in result :
00889     factories.push_back(factory)
00890   return result
00891 
00892 #----CallbackStreamBuf----------------------------------------------------------------
00893 #    Used for redirecting C++ messages to python
_CallbackStreamBufBase = gbl.GaudiPython.CallbackStreamBuf

def GaudiPython::Bindings::deprecation (   message  ) 

Definition at line 61 of file Bindings.py.

00061                         :
00062   warnings.warn('GaudiPython: '+ message, DeprecationWarning, stacklevel=3)
00063 
00064 #----InterfaceCast class ----------------------------------------------------------------
class InterfaceCast(object) :

def GaudiPython::Bindings::getClass (   name,
  libs = [] 
)

Function to retrieve a certain C++ class by name and to load dictionary if requested 

Usage:

from gaudimodule import getClass 
# one knows that class is already loaded 
AppMgr     = getClass( 'ApplicationMgr'           )
# one knows where to look for class, if not loaded yet  
MCParticle = getClass( 'MCParticle' , 'EventDict' )
# one knows where to look for class, if not loaded yet 
Vertex     = getClass( 'Vertex' , ['EventDict', 'PhysEventDict'] )

Definition at line 97 of file Bindings.py.

00097                                  :
00098     """ 
00099     Function to retrieve a certain C++ class by name and to load dictionary if requested 
00100 
00101     Usage:
00102 
00103     from gaudimodule import getClass 
00104     # one knows that class is already loaded 
00105     AppMgr     = getClass( 'ApplicationMgr'           )
00106     # one knows where to look for class, if not loaded yet  
00107     MCParticle = getClass( 'MCParticle' , 'EventDict' )
00108     # one knows where to look for class, if not loaded yet 
00109     Vertex     = getClass( 'Vertex' , ['EventDict', 'PhysEventDict'] )
00110     """
00111     # see if class is already loaded
00112     if hasattr( gbl , name )  : return getattr( gbl , name )   
00113     # try to load dictionaries and  look for the required class
00114     if type(libs) is not list : libs = [libs]
00115     for lib in libs :
00116       loaddict( lib )
00117       if hasattr( gbl , name ) : return getattr( gbl , name )
00118     # return None ( or raise exception? I do not know...  )
00119     return None
00120 
00121 #----PropertyEntry class---------------------------------------------------------------------
class PropertyEntry(object) :

def GaudiPython::Bindings::getComponentProperties (   name  ) 

Get all the properties of a component as a Python dictionary. 
    The component is instantiated using the component library

Definition at line 840 of file Bindings.py.

00840                                   :
00841   """ Get all the properties of a component as a Python dictionary. 
00842       The component is instantiated using the component library
00843   """
00844   properties = {}
00845   if name == 'GaudiSvc' :
00846     if Helper.loadDynamicLib(name) != 1 :
00847       raise ImportError,  'Error loading component library '+ name
00848     factorylist = gbl.FactoryTable.instance().getEntries()
00849     factories = _copyFactoriesFromList(factorylist)
00850     g = AppMgr(outputlevel=7)     
00851   else :
00852     g = AppMgr(outputlevel=7) 
00853     if Helper.loadDynamicLib(name) != 1 :
00854       raise ImportError,  'Error loading component library '+ name
00855     factorylist = gbl.FactoryTable.instance().getEntries()
00856     factories = _copyFactoriesFromList(factorylist)
00857   svcloc    = gbl.Gaudi.svcLocator()
00858   dummysvc  = gbl.Service('DummySvc',svcloc)
00859   for factory in factories :
00860     if    InterfaceCast(gbl.IAlgFactory)(factory) : ctype = 'Algorithm'
00861     elif  InterfaceCast(gbl.ISvcFactory)(factory) : ctype = 'Service'
00862     elif  InterfaceCast(gbl.IToolFactory)(factory) : ctype = 'AlgTool'
00863     elif  factory.ident() == 'ApplicationMgr' :  ctype = 'ApplicationMgr'
00864     else :  ctype = 'Unknown'
00865     cname = factory.ident().split()[-1]
00866     if ctype in ('Algorithm','Service', 'AlgTool', 'ApplicationMgr') :
00867       try :
00868         if ctype == 'AlgTool' :
00869           obj = factory.instantiate(dummysvc)
00870         else :
00871           obj = factory.instantiate(svcloc)
00872       except RuntimeError, text :
00873         print 'Error instantiating', cname, ' from ', name
00874         print text
00875         continue
00876       prop = iProperty('dummy', obj)
00877       properties[cname] = [ctype, prop.properties()]
00878       try:  obj.release()
00879       except: pass
00880   return properties
00881 
def _copyFactoriesFromList(factories) :

def GaudiPython::Bindings::loaddict (   dict  ) 

Load a LCG dictionary using various mechanisms

Definition at line 87 of file Bindings.py.

00087                    :
00088   """ Load a LCG dictionary using various mechanisms"""
00089   if Helper.loadDynamicLib(dict) == 1 : return
00090   else :
00091     try: 
00092       PyCintex.loadDict(dict)
00093     except: 
00094       raise ImportError, 'Error loading dictionary library'
00095 
00096 #---get a class (by loading modules if needed)--------------------------------------------
def getClass( name , libs = [] ) :


Variable Documentation

Initial value:

[ 'gbl','InterfaceCast', 'Interface', 'PropertyEntry',
            'AppMgr', 'PyAlgorithm', 'CallbackStreamBuf',
            'iAlgorithm', 'iDataSvc', 'iHistogramSvc','iNTupleSvc','iService', 'iAlgTool', 'Helper', 
            'SUCCESS', 'FAILURE', 'toArray',
            'ROOT', 'makeNullPointer', 'makeClass', 'setOwnership',
            'getClass', 'loaddict', 'deprecation' ]

Definition at line 11 of file Bindings.py.

GaudiPython::Bindings::_CallbackStreamBufBase = gbl.GaudiPython.CallbackStreamBuf

Definition at line 894 of file Bindings.py.

Definition at line 29 of file Bindings.py.

GaudiPython::Bindings::_PyAlgorithm = gbl.GaudiPython.PyAlgorithm

Definition at line 906 of file Bindings.py.

Definition at line 38 of file Bindings.py.

tuple GaudiPython::Bindings::FAILURE = gbl.StatusCode( gbl.StatusCode.FAILURE, True )

Definition at line 40 of file Bindings.py.

Definition at line 27 of file Bindings.py.

GaudiPython::Bindings::GaudiHandleArrayProperty = gbl.GaudiHandleArrayProperty

Definition at line 37 of file Bindings.py.

GaudiPython::Bindings::GaudiHandleProperty = gbl.GaudiHandleProperty

Definition at line 36 of file Bindings.py.

tuple GaudiPython::Bindings::gbl = PyCintex.makeNamespace('')

Definition at line 26 of file Bindings.py.

GaudiPython::Bindings::Helper = gbl.GaudiPython.Helper

Definition at line 33 of file Bindings.py.

GaudiPython::Bindings::makeClass = PyCintex.libPyROOT.MakeRootClass

Definition at line 58 of file Bindings.py.

GaudiPython::Bindings::makeNullPointer = PyCintex.libPyROOT.MakeNullPointer

Definition at line 57 of file Bindings.py.

GaudiPython::Bindings::ROOT = PyCintex.libPyROOT

Definition at line 56 of file Bindings.py.

GaudiPython::Bindings::setOwnership = PyCintex.libPyROOT.SetOwnership

Definition at line 59 of file Bindings.py.

tuple GaudiPython::Bindings::StringProperty = gbl.SimpleProperty('string','BoundedVerifier<string>')

Definition at line 34 of file Bindings.py.

tuple GaudiPython::Bindings::StringPropertyRef = gbl.SimplePropertyRef('string','NullVerifier<string>')

Definition at line 35 of file Bindings.py.

tuple GaudiPython::Bindings::SUCCESS = gbl.StatusCode( gbl.StatusCode.SUCCESS, True )

Definition at line 39 of file Bindings.py.

tuple GaudiPython::Bindings::toArray = lambdatyp:getattr(Helper,"toArray")

Definition at line 50 of file Bindings.py.


Generated at Thu Jan 8 17:53:54 2009 for Gaudi Framework, version v20r4 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004