LSST Applications g00d0e8bbd7+8c5ae1fdc5,g013ef56533+603670b062,g083dd6704c+2e189452a7,g199a45376c+0ba108daf9,g1c5cce2383+bc9f6103a4,g1fd858c14a+cd69ed4fc1,g210f2d0738+c4742f2e9e,g262e1987ae+612fa42d85,g29ae962dfc+83d129e820,g2cef7863aa+aef1011c0b,g35bb328faa+8c5ae1fdc5,g3fd5ace14f+5eaa884f2a,g47891489e3+e32160a944,g53246c7159+8c5ae1fdc5,g5b326b94bb+dcc56af22d,g64539dfbff+c4742f2e9e,g67b6fd64d1+e32160a944,g74acd417e5+c122e1277d,g786e29fd12+668abc6043,g87389fa792+8856018cbb,g88cb488625+47d24e4084,g89139ef638+e32160a944,g8d7436a09f+d14b4ff40a,g8ea07a8fe4+b212507b11,g90f42f885a+e1755607f3,g97be763408+34be90ab8c,g98df359435+ec1fa61bf1,ga2180abaac+8c5ae1fdc5,ga9e74d7ce9+43ac651df0,gbf99507273+8c5ae1fdc5,gc2a301910b+c4742f2e9e,gca7fc764a6+e32160a944,gd7ef33dd92+e32160a944,gdab6d2f7ff+c122e1277d,gdb1e2cdc75+1b18322db8,ge410e46f29+e32160a944,ge41e95a9f2+c4742f2e9e,geaed405ab2+0d91c11c6d,w.2025.44
LSST Data Management Base Package
Loading...
Searching...
No Matches
lsst.pex.config.registry Namespace Reference

Classes

class  ConfigurableWrapper
 
class  Registry
 
class  RegistryAdaptor
 
class  RegistryField
 
class  RegistryInstanceDict
 

Functions

 makeRegistry (doc, configBaseType=Config)
 
 registerConfigurable (name, registry, ConfigClass=None)
 
 registerConfig (name, registry, target)
 

Function Documentation

◆ makeRegistry()

lsst.pex.config.registry.makeRegistry ( doc,
configBaseType = Config )
Create a `Registry`.

Parameters
----------
doc : `str`
    Docstring for the created `Registry` (this is set as the ``__doc__``
    attribute of the `Registry` instance.
configBaseType : `lsst.pex.config.Config`-type
    Base type of config classes in the `Registry`.

Returns
-------
registry : `Registry`
    Registry with ``__doc__`` and ``_configBaseType`` attributes
    set.

Definition at line 399 of file registry.py.

399def makeRegistry(doc, configBaseType=Config):
400 """Create a `Registry`.
401
402 Parameters
403 ----------
404 doc : `str`
405 Docstring for the created `Registry` (this is set as the ``__doc__``
406 attribute of the `Registry` instance.
407 configBaseType : `lsst.pex.config.Config`-type
408 Base type of config classes in the `Registry`.
409
410 Returns
411 -------
412 registry : `Registry`
413 Registry with ``__doc__`` and ``_configBaseType`` attributes
414 set.
415 """
416 cls = type("Registry", (Registry,), {"__doc__": doc})
417 return cls(configBaseType=configBaseType)
418
419

◆ registerConfig()

lsst.pex.config.registry.registerConfig ( name,
registry,
target )
Add a class as a ``ConfigClass`` in a `Registry` and
associate it with the given configurable.

Parameters
----------
name : `str`
    Name of the ``target`` in the ``registry``.
registry : `Registry`
    The registry containing the ``target``.
target : obj
    A configurable type, such as a subclass of `lsst.pipe.base.Task`.

See Also
--------
registerConfigurable

Notes
-----
Internally, this decorator runs `Registry.register`.

Definition at line 449 of file registry.py.

449def registerConfig(name, registry, target):
450 """Add a class as a ``ConfigClass`` in a `Registry` and
451 associate it with the given configurable.
452
453 Parameters
454 ----------
455 name : `str`
456 Name of the ``target`` in the ``registry``.
457 registry : `Registry`
458 The registry containing the ``target``.
459 target : obj
460 A configurable type, such as a subclass of `lsst.pipe.base.Task`.
461
462 See Also
463 --------
464 registerConfigurable
465
466 Notes
467 -----
468 Internally, this decorator runs `Registry.register`.
469 """
470
471 def decorate(cls):
472 registry.register(name, target=target, ConfigClass=cls)
473 return cls
474
475 return decorate

◆ registerConfigurable()

lsst.pex.config.registry.registerConfigurable ( name,
registry,
ConfigClass = None )
Add a class as a configurable in a `Registry` instance.

Parameters
----------
name : `str`
    Name of the target (the decorated class) in the ``registry``.
registry : `Registry`
    The `Registry` instance that the decorated class is added to.
ConfigClass : `lsst.pex.config.Config`-type, optional
    Config class associated with the configurable. If `None`, the class's
    ``ConfigClass`` attribute is used instead.

See Also
--------
registerConfig

Notes
-----
Internally, this decorator runs `Registry.register`.

Definition at line 420 of file registry.py.

420def registerConfigurable(name, registry, ConfigClass=None):
421 """Add a class as a configurable in a `Registry` instance.
422
423 Parameters
424 ----------
425 name : `str`
426 Name of the target (the decorated class) in the ``registry``.
427 registry : `Registry`
428 The `Registry` instance that the decorated class is added to.
429 ConfigClass : `lsst.pex.config.Config`-type, optional
430 Config class associated with the configurable. If `None`, the class's
431 ``ConfigClass`` attribute is used instead.
432
433 See Also
434 --------
435 registerConfig
436
437 Notes
438 -----
439 Internally, this decorator runs `Registry.register`.
440 """
441
442 def decorate(cls):
443 registry.register(name, target=cls, ConfigClass=ConfigClass)
444 return cls
445
446 return decorate
447
448