|
LSSTApplications
8.0.0.0+107,8.0.0.1+13,9.1+18,9.2,master-g084aeec0a4,master-g0aced2eed8+6,master-g15627eb03c,master-g28afc54ef9,master-g3391ba5ea0,master-g3d0fb8ae5f,master-g4432ae2e89+36,master-g5c3c32f3ec+17,master-g60f1e072bb+1,master-g6a3ac32d1b,master-g76a88a4307+1,master-g7bce1f4e06+57,master-g8ff4092549+31,master-g98e65bf68e,master-ga6b77976b1+53,master-gae20e2b580+3,master-gb584cd3397+53,master-gc5448b162b+1,master-gc54cf9771d,master-gc69578ece6+1,master-gcbf758c456+22,master-gcec1da163f+63,master-gcf15f11bcc,master-gd167108223,master-gf44c96c709
LSSTDataManagementBasePackage
|
A class for loading and managing the dependency tree of a package, as defined by its configuration module (.cfg) file. More...
Public Member Functions | |
| def | __init__ |
| Recursively load *.cfg files for packageName and all its dependencies. More... | |
| def | configure |
| Configure the entire dependency tree in order. More... | |
| def | __contains__ |
| def | __getitem__ |
| def | get |
| def | keys |
Public Attributes | |
| cfgPath | |
| packages | |
| customTests | |
| primary | |
Static Public Attributes | |
| has_key = __contains__ | |
Properties | |
| name = property(lambda self: self.primary.config.name) | |
Private Member Functions | |
| def | _tryImport |
| def | _recurse |
Private Attributes | |
| _current | |
A class for loading and managing the dependency tree of a package, as defined by its configuration module (.cfg) file.
This tree isn't actually stored as a tree; it's flattened into an ordered dictionary as it is recursively loaded.
The main SCons produced by configure() and available as sconsUtils.env will contain an instance of this class as env.dependencies.
Its can be used like a read-only dictionary to check whether an optional package has been configured; a package that was not found will have a value of None, while a configured package's value will be its imported .cfg module.
Definition at line 387 of file dependencies.py.
| def lsst.sconsUtils.dependencies.PackageTree.__init__ | ( | self, | |
| primaryName, | |||
noCfgFile = False |
|||
| ) |
Recursively load *.cfg files for packageName and all its dependencies.
| primaryName | The name of the primary package being built. |
| noCfgFile | If True, this package has no .cfg file |
After __init__, self.primary will be set to the configuration module for the primary package, and self.packages will be an OrderedDict of dependencies (excluding self.primary), ordered such that configuration can proceed in iteration order.
Definition at line 399 of file dependencies.py.
| def lsst.sconsUtils.dependencies.PackageTree.__contains__ | ( | self, | |
| name | |||
| ) |
Definition at line 460 of file dependencies.py.
| def lsst.sconsUtils.dependencies.PackageTree.__getitem__ | ( | self, | |
| name | |||
| ) |
Definition at line 465 of file dependencies.py.
|
private |
|
private |
Search for and import an individual configuration module from file.
Definition at line 482 of file dependencies.py.
| def lsst.sconsUtils.dependencies.PackageTree.configure | ( | self, | |
| env, | |||
check = False |
|||
| ) |
Configure the entire dependency tree in order.
and return an updated environment."""
Definition at line 440 of file dependencies.py.
| def lsst.sconsUtils.dependencies.PackageTree.get | ( | self, | |
| name, | |||
default = None |
|||
| ) |
Definition at line 471 of file dependencies.py.
| def lsst.sconsUtils.dependencies.PackageTree.keys | ( | self | ) |
Definition at line 477 of file dependencies.py.
|
private |
Definition at line 408 of file dependencies.py.
| lsst.sconsUtils.dependencies.PackageTree.cfgPath |
Definition at line 400 of file dependencies.py.
| lsst.sconsUtils.dependencies.PackageTree.customTests |
Definition at line 402 of file dependencies.py.
|
static |
Definition at line 463 of file dependencies.py.
| lsst.sconsUtils.dependencies.PackageTree.packages |
Definition at line 401 of file dependencies.py.
| lsst.sconsUtils.dependencies.PackageTree.primary |
Definition at line 410 of file dependencies.py.
|
static |
Definition at line 437 of file dependencies.py.
1.8.5