| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

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 25 of file ConfigurableDb.py.

00028                 {
00029         '_duplicates' : { },

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 30 of file ConfigurableDb.py.

00032                       :
00033         object.__init__(self)
00034         self._duplicates = {}
00035         return
00036 
00037     def add( self, configurable, package, module, lib ):
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
        else:

def ConfigurableDb::_CfgDb::duplicates (   self  ) 

Definition at line 59 of file ConfigurableDb.py.

00059             :
00060             log.debug( "added [%s] p=%s m=%s lib=%s", 
00061                        configurable, package, module, lib )
            self[configurable] = cfg


Member Data Documentation

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

Initial value:

{
        '_duplicates' : { },
        }

Definition at line 21 of file ConfigurableDb.py.

ConfigurableDb::_CfgDb::_duplicates [private]

Definition at line 27 of file ConfigurableDb.py.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:57:16 2011 for GaudiKernel by doxygen 1.4.7