Gaudi Framework, version v24r2

Home   Generated: Wed Dec 4 2013
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
GaudiKernel.ConfigurableDb._CfgDb Class Reference
Inheritance diagram for GaudiKernel.ConfigurableDb._CfgDb:
Inheritance graph
[legend]
Collaboration diagram for GaudiKernel.ConfigurableDb._CfgDb:
Collaboration graph
[legend]

Public Member Functions

def __init__
 
def add
 
def duplicates
 

Private Attributes

 _duplicates
 

Static Private Attributes

dictionary __slots__
 

Detailed Description

A singleton class holding informations about automatically generated
Configurables.
 --> package holding that Configurable
 --> library holding the components related to that Configurable
 --> python module holding the Configurable
 --> a dictionary of duplicates

Definition at line 18 of file ConfigurableDb.py.

Constructor & Destructor Documentation

def GaudiKernel.ConfigurableDb._CfgDb.__init__ (   self)

Definition at line 32 of file ConfigurableDb.py.

32 
33  def __init__(self):
34  object.__init__(self)
35  self._duplicates = {}
36  return

Member Function Documentation

def GaudiKernel.ConfigurableDb._CfgDb.add (   self,
  configurable,
  package,
  module,
  lib 
)
Method to populate the Db.
It is called from the auto-generated Xyz_confDb.py files (genconf.cpp)
@param configurable: the name of the configurable being added
@param package: the name of the package which holds this Configurable
@param module: the name of the python module holding the Configurable
@param lib: the name of the library holding the component(s) (ie: the
    C++ Gaudi component which is mapped by the Configurable)

Definition at line 37 of file ConfigurableDb.py.

37 
38  def add( self, configurable, package, module, lib ):
39  """Method to populate the Db.
40  It is called from the auto-generated Xyz_confDb.py files (genconf.cpp)
41  @param configurable: the name of the configurable being added
42  @param package: the name of the package which holds this Configurable
43  @param module: the name of the python module holding the Configurable
44  @param lib: the name of the library holding the component(s) (ie: the
45  C++ Gaudi component which is mapped by the Configurable)
46  """
47  cfg = { 'package' : package,
48  'module' : module,
49  'lib' : lib }
50  if self.has_key( configurable ):
51  ## check if it comes from the same library...
52  if cfg['lib'] != self[configurable]['lib']:
53  log.debug( "dup!! [%s] p=%s m=%s lib=%s",
54  configurable, package, module, lib )
55  if self._duplicates.has_key(configurable):
56  self._duplicates[configurable] += [ cfg ]
57  else:
58  self._duplicates[configurable] = [ cfg ]
59  pass
60  else:
61  log.debug( "added [%s] p=%s m=%s lib=%s",
62  configurable, package, module, lib )
63  self[configurable] = cfg
64  pass
65  return
def GaudiKernel.ConfigurableDb._CfgDb.duplicates (   self)

Definition at line 66 of file ConfigurableDb.py.

66 
67  def duplicates(self):
68  return self._duplicates

Member Data Documentation

dictionary GaudiKernel.ConfigurableDb._CfgDb.__slots__
staticprivate
Initial value:
1 {
2  '_duplicates' : { },
3  }

Definition at line 28 of file ConfigurableDb.py.

GaudiKernel.ConfigurableDb._CfgDb._duplicates
private

Definition at line 34 of file ConfigurableDb.py.


The documentation for this class was generated from the following file:
Generated at Wed Dec 4 2013 14:33:22 for Gaudi Framework, version v24r2 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004