00001 00002 ## @package LHCbKernel 00003 # Base configurables for the LHCb software 00004 # @author Chris Jones (Christopher.Rob.Jones@cern.ch) 00005 # @date 15/08/2008 00006 00007 __version__ = "$Id: Configuration.py,v 1.9 2009/01/28 16:10:59 cattanem Exp $" 00008 __author__ = "Chris Jones <Christopher.Rob.Jones@cern.ch>" 00009 00010 from Gaudi.Configuration import * 00011 00012 # ---------------------------------------------------------------------------------- 00013 00014 ## @class LHCbConfigurableUser 00015 # Base configurable for LHCb software 00016 # @author Chris Jones (Christopher.Rob.Jones@cern.ch) 00017 # @date 15/08/2008 00018 class LHCbConfigurableUser(ConfigurableUser): 00019 00020 ## Default options are empty 00021 __slots__ = { } 00022 00023 ## @brief Object 'Constructor' 00024 def __init__(self, name = Configurable.DefaultName, **kwargs): 00025 kwargs["name"] = name 00026 apply(super(LHCbConfigurableUser, self).__init__, (), kwargs) 00027 self.initialize() 00028 00029 ## @brief Default initialize method 00030 # Derived classes can reimplement this method, to run any object 00031 # initialisation tasks they wish 00032 def initialize(self) : pass 00033 00034 00035 ## @brief Set the given property in another configurable object 00036 # @param other The other configurable to set the property for 00037 # @param name The property name 00038 def setOtherProp(self,other,name): 00039 self.propagateProperty(name,other) 00040 00041 00042 ## @brief Set the given properties in another configurable object 00043 # @param other The other configurable to set the property for 00044 # @param names The property names 00045 def setOtherProps(self,other,names): 00046 self.propagateProperties(names,other)