Gaudi Framework, version v21r9

Home   Generated: 3 May 2010

ConfigurableDb::_CfgDb Class Reference

List of all members.

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.


Member Function Documentation

def ConfigurableDb::_CfgDb::__init__ (   self  ) 

Definition at line 32 of file ConfigurableDb.py.

00032                       :
00033         object.__init__(self)
00034         self._duplicates = {}
00035         return
00036 
    def add( self, configurable, package, module, lib ):

def 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.

00037                                                        :
00038         """Method to populate the Db.
00039         It is called from the auto-generated Xyz_confDb.py files (genconf.cpp)
00040         @param configurable: the name of the configurable being added
00041         @param package: the name of the package which holds this Configurable
00042         @param module: the name of the python module holding the Configurable
00043         @param lib: the name of the library holding the component(s) (ie: the
00044                     C++ Gaudi component which is mapped by the Configurable)
00045         """
00046         cfg = { 'package' : package,
00047                 'module'  : module,
00048                 'lib'     : lib }
00049         if self.has_key( configurable ):
00050             ## check if it comes from the same library...
00051             if cfg['lib'] != self[configurable]['lib']:
00052                 log.debug( "dup!! [%s] p=%s m=%s lib=%s",
00053                            configurable, package, module, lib )
00054                 if self._duplicates.has_key(configurable):
00055                     self._duplicates[configurable] += [ cfg ]
00056                 else:
00057                     self._duplicates[configurable]  = [ cfg ]
00058                     pass
00059         else:
00060             log.debug( "added [%s] p=%s m=%s lib=%s",
00061                        configurable, package, module, lib )
00062             self[configurable] = cfg
00063             pass
00064         return
00065 
    def duplicates(self):

def ConfigurableDb::_CfgDb::duplicates (   self  ) 

Definition at line 66 of file ConfigurableDb.py.

00066                         :
00067         return self._duplicates
00068 
    pass # class _CfgDb


Member Data Documentation

dictionary ConfigurableDb::_CfgDb::__slots__ [static, private]

Initial value:

{
        '_duplicates' : { },
        }

Definition at line 28 of file ConfigurableDb.py.

Definition at line 34 of file ConfigurableDb.py.


The documentation for this class was generated from the following file:

Generated at Mon May 3 12:28:14 2010 for Gaudi Framework, version v21r9 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004