|
| def | __init__ (self, name=Configurable.DefaultName, _enabled=True, **kwargs) |
| |
| def | getGaudiType (cls) |
| |
| def | getDlls (self) |
| |
| def | getHandle (self) |
| |
| def | __detach_used__ (self) |
| |
| def | propagateProperty (self, name, others=None, force=True) |
| |
| def | propagateProperties (self, names=None, others=None, force=True) |
| |
| def | __apply_configuration__ (self) |
| |
| def | applyConf (self) |
| |
| def | getUsedInstance (self, name) |
| |
| def | isApplicable (self) |
| |
| def | __new__ (cls, *args, **kwargs) |
| |
| def | __init__ (self, name=DefaultName) |
| |
| def | __getstate__ (self) |
| |
| def | __getnewargs__ (self) |
| |
| def | __setstate__ (self, dict) |
| |
| def | __len__ (self) |
| |
| def | __iter__ (self) |
| |
| def | __deepcopy__ (self, memo) |
| |
| def | __iadd__ (self, configs, descr=None) |
| |
| def | __getattr__ (self, attr) |
| |
| def | __setattr__ (self, name, value) |
| |
| def | __delattr__ (self, attr) |
| |
| def | __nonzero__ (self) |
| |
| def | remove (self, items) |
| |
| def | removeAll (self) |
| |
| def | copyChild (self, child) |
| |
| def | setParent (self, parentName) |
| |
| def | getParent (self) |
| |
| def | hasParent (self, parent) |
| |
| def | copyChildAndSetParent (self, cfg, parent) |
| |
| def | getChildren (self) |
| |
| def | getTools (self) |
| |
| def | children (self) |
| |
| def | getAllChildren (self) |
| |
| def | getSequence (self) |
| |
| def | setup (self) |
| |
| def | getProperties (self) |
| |
| def | getPropertiesWithDescription (self) |
| |
| def | getValuedProperties (self) |
| |
| def | properties (self) |
| |
| def | getDefaultProperties (cls) |
| |
| def | getDefaultProperty (cls, name) |
| |
| def | getProp (self, name) |
| |
| def | setProp (self, name, value) |
| |
| def | isPropertySet (self, name) |
| |
| def | getType (cls) |
| |
| def | getName (self) |
| |
| def | name (self) |
| |
| def | getJobOptName (self) |
| |
| def | isPublic (self) |
| |
| def | jobOptName (self) |
| |
| def | getFullName (self) |
| |
| def | getFullJobOptName (self) |
| |
| def | getPrintTitle (self) |
| |
| def | getTitleName (self) |
| |
| def | setDefaults (cls, handle) |
| |
| def | clone (self, name=None, **kwargs) |
| |
| def | splitName (self) |
| |
| def | addTool (self, tool, name=None) |
| |
| def | __repr__ (self) |
| |
| def | __str__ (self, indent=0, headerLastIndentUnit=indentUnit) |
| |
Definition at line 1272 of file Configurable.py.
◆ __init__()
| def GaudiKernel.Configurable.ConfigurableUser.__init__ |
( |
|
self, |
|
|
|
name = Configurable.DefaultName, |
|
|
|
_enabled = True, |
|
|
** |
kwargs |
|
) |
| |
Definition at line 1292 of file Configurable.py.
1292 def __init__(self, name=Configurable.DefaultName, _enabled=True, **kwargs):
1293 super(ConfigurableUser, self).__init__(name)
1294 for n, v
in kwargs.items():
1296 self._enabled = _enabled
1298 self._applied =
False 1306 self.__used_instances__ = []
1307 for used
in self.__used_configurables__:
1310 used_name = Configurable.DefaultName
1312 if type(used)
is tuple:
1313 used, used_name = used
1315 used_name = self._instanceName(used)
1317 if type(used)
is str:
1318 used_class = confDbGetConfigurable(used)
1323 inst = used_class(name=used_name, _enabled=
False)
1324 except AttributeError:
1328 inst = used_class(name=used_name)
1329 self.__addActiveUseOf(inst)
1330 for queried
in self.__queried_configurables__:
1332 if type(queried)
is str:
1333 queried = confDbGetConfigurable(used)
1334 inst = queried(_enabled=
False)
1335 except AttributeError:
1337 self.__addPassiveUseOf(inst)
◆ __addActiveUseOf()
| def GaudiKernel.Configurable.ConfigurableUser.__addActiveUseOf |
( |
|
self, |
|
|
|
other |
|
) |
| |
|
private |
Declare that we are going to modify the Configurable 'other' in our
__apply_configuration__.
Definition at line 1339 of file Configurable.py.
1339 def __addActiveUseOf(self, other):
1341 Declare that we are going to modify the Configurable 'other' in our 1342 __apply_configuration__. 1344 self.__used_instances__.append(other)
1345 if hasattr(other,
"__users__"):
1346 other.__users__.append(self)
◆ __addPassiveUseOf()
| def GaudiKernel.Configurable.ConfigurableUser.__addPassiveUseOf |
( |
|
self, |
|
|
|
other |
|
) |
| |
|
private |
Declare that we are going to retrieve property values from the
ConfigurableUser 'other' in our __apply_configuration__.
Definition at line 1348 of file Configurable.py.
1348 def __addPassiveUseOf(self, other):
1350 Declare that we are going to retrieve property values from the 1351 ConfigurableUser 'other' in our __apply_configuration__. 1353 if not isinstance(other, ConfigurableUser):
1355 "'%s': Cannot make passive use of '%s', it is not a ConfigurableUser" 1356 % (self.name(), other.name()))
1357 other.__addActiveUseOf(self)
◆ __apply_configuration__()
| def GaudiKernel.Configurable.ConfigurableUser.__apply_configuration__ |
( |
|
self | ) |
|
Function to be overridden to convert the high level configuration into a
low level one.
The default implementation calls applyConf, which is the method defined
in some ConfigurableUser implementations.
Reimplemented in Gaudi.Configuration.GaudiPersistency.
Definition at line 1442 of file Configurable.py.
1442 def __apply_configuration__(self):
1444 Function to be overridden to convert the high level configuration into a 1446 The default implementation calls applyConf, which is the method defined 1447 in some ConfigurableUser implementations. 1449 return self.applyConf()
◆ __detach_used__()
| def GaudiKernel.Configurable.ConfigurableUser.__detach_used__ |
( |
|
self | ) |
|
Remove this ConfigurableUser instance from the users list of the used
instances.
Definition at line 1369 of file Configurable.py.
1369 def __detach_used__(self):
1371 Remove this ConfigurableUser instance from the users list of the used 1374 for used
in self.__used_instances__:
1377 used.__users__.remove(self)
◆ _instanceName()
| def GaudiKernel.Configurable.ConfigurableUser._instanceName |
( |
|
self, |
|
|
|
cls |
|
) |
| |
|
private |
Function used to define the name of the private instance of a given class
name.
This method is used when the __used_configurables_property__ declares the
need of a private used configurable without specifying the name.
Definition at line 1458 of file Configurable.py.
1458 def _instanceName(self, cls):
1460 Function used to define the name of the private instance of a given class 1462 This method is used when the __used_configurables_property__ declares the 1463 need of a private used configurable without specifying the name. 1465 if type(cls)
is str:
1468 clName = cls.__name__
1469 return "%s_%s" % (self.name(), clName)
◆ applyConf()
| def GaudiKernel.Configurable.ConfigurableUser.applyConf |
( |
|
self | ) |
|
Function to be overridden to convert the high level configuration into a
low level one.
Definition at line 1451 of file Configurable.py.
1451 def applyConf(self):
1453 Function to be overridden to convert the high level configuration into a
◆ getDlls()
| def GaudiKernel.Configurable.ConfigurableUser.getDlls |
( |
|
self | ) |
|
◆ getGaudiType()
| def GaudiKernel.Configurable.ConfigurableUser.getGaudiType |
( |
|
cls | ) |
|
◆ getHandle()
| def GaudiKernel.Configurable.ConfigurableUser.getHandle |
( |
|
self | ) |
|
◆ getUsedInstance()
| def GaudiKernel.Configurable.ConfigurableUser.getUsedInstance |
( |
|
self, |
|
|
|
name |
|
) |
| |
Return the used instance with a given name.
Definition at line 1471 of file Configurable.py.
1471 def getUsedInstance(self, name):
1473 Return the used instance with a given name. 1475 for i
in self.__used_instances__:
1476 if i.name() == name:
1477 if hasattr(i,
"_enabled"):
1482 raise KeyError(name)
◆ isApplicable()
| def GaudiKernel.Configurable.ConfigurableUser.isApplicable |
( |
|
self | ) |
|
Return True is the instance can be "applied".
Definition at line 1484 of file Configurable.py.
1486 Return True is the instance can be "applied". 1488 return (
not self.__users__)
and (
not self._applied)
def isApplicable(self)
rep += v.__str__( indent + 1 ) + os.linesep elif isinstance(v,GaudiHandleArray): for vi in v: if isin...
◆ propagateProperties()
| def GaudiKernel.Configurable.ConfigurableUser.propagateProperties |
( |
|
self, |
|
|
|
names = None, |
|
|
|
others = None, |
|
|
|
force = True |
|
) |
| |
Call propagateProperty for each property listed in 'names'.
If 'names' is None, all the properties are propagated.
Definition at line 1431 of file Configurable.py.
1431 def propagateProperties(self, names=None, others=None, force=True):
1433 Call propagateProperty for each property listed in 'names'. 1434 If 'names' is None, all the properties are propagated. 1438 names = [p
for p
in self.__slots__
if not p.startswith(
"_")]
1440 self.propagateProperty(n, others, force)
◆ propagateProperty()
| def GaudiKernel.Configurable.ConfigurableUser.propagateProperty |
( |
|
self, |
|
|
|
name, |
|
|
|
others = None, |
|
|
|
force = True |
|
) |
| |
Propagate the property 'name' (if set) to other configurables (if possible).
'others' can be:
None:
propagate to all the entries in __used_configurables__
a configurable instance:
propagate only to it
list of configurable instances:
propagate to all of them.
The logic is:
- if the local property is set, the other property will be overwritten
- local property not set and other set => keep other
- local property not set and other not set => overwrite the default for
ConfigurableUser instances and set the property for Configurables
Definition at line 1379 of file Configurable.py.
1379 def propagateProperty(self, name, others=None, force=True):
1381 Propagate the property 'name' (if set) to other configurables (if possible). 1384 propagate to all the entries in __used_configurables__ 1385 a configurable instance: 1386 propagate only to it 1387 list of configurable instances: 1388 propagate to all of them. 1392 - if the local property is set, the other property will be overwritten 1393 - local property not set and other set => keep other 1394 - local property not set and other not set => overwrite the default for 1395 ConfigurableUser instances and set the property for Configurables 1399 others = self.__used_instances__
1400 elif type(others)
not in [list, tuple]:
1403 local_is_set = self.isPropertySet(name)
1404 value = self.getProp(name)
1406 for other
in [o
for o
in others
if name
in o.__slots__]:
1409 if other.isPropertySet(name):
1411 "Property '%(prop)s' is set in both '%(self)s' and '%(other)s', using '%(self)s.%(prop)s'" 1413 "self": self.name(),
1414 "other": other.name(),
1417 other.setProp(name, value)
1419 elif not other.isPropertySet(name):
1420 if isinstance(other, ConfigurableUser):
1421 otherType =
type(other._properties[name].getDefault())
1422 other._properties[name].setDefault(value)
1423 if otherType
in [list, dict]:
1426 other.setProp(name, otherType(value))
1428 other.setProp(name, value)
◆ __queried_configurables__
| list GaudiKernel.Configurable.ConfigurableUser.__queried_configurables__ = [] |
|
staticprivate |
◆ __slots__
| dictionary GaudiKernel.Configurable.ConfigurableUser.__slots__ |
|
staticprivate |
Initial value:= {
"__users__": [],
"__used_instances__": [],
"_enabled": True,
"_applied": False
}
Definition at line 1273 of file Configurable.py.
◆ __used_configurables__
| list GaudiKernel.Configurable.ConfigurableUser.__used_configurables__ = [] |
|
staticprivate |
◆ __used_instances__
| GaudiKernel.Configurable.ConfigurableUser.__used_instances__ |
|
private |
◆ __users__
| GaudiKernel.Configurable.ConfigurableUser.__users__ |
|
private |
◆ _applied
| GaudiKernel.Configurable.ConfigurableUser._applied |
|
private |
◆ _enabled
| GaudiKernel.Configurable.ConfigurableUser._enabled |
|
private |
The documentation for this class was generated from the following file: