|
LSSTApplications
11.0-13-gbb96280,12.1+18,12.1+7,12.1-1-g14f38d3+72,12.1-1-g16c0db7+5,12.1-1-g5961e7a+84,12.1-1-ge22e12b+23,12.1-11-g06625e2+4,12.1-11-g0d7f63b+4,12.1-19-gd507bfc,12.1-2-g7dda0ab+38,12.1-2-gc0bc6ab+81,12.1-21-g6ffe579+2,12.1-21-gbdb6c2a+4,12.1-24-g941c398+5,12.1-3-g57f6835+7,12.1-3-gf0736f3,12.1-37-g3ddd237,12.1-4-gf46015e+5,12.1-5-g06c326c+20,12.1-5-g648ee80+3,12.1-5-gc2189d7+4,12.1-6-ga608fc0+1,12.1-7-g3349e2a+5,12.1-7-gfd75620+9,12.1-9-g577b946+5,12.1-9-gc4df26a+10
LSSTDataManagementBasePackage
|
Go to the source code of this file.
Macros | |
| #define | LSST_CONTROL_FIELD(NAME, TYPE, DOC) |
| A preprocessor macro used to define fields in C++ "control object" structs. More... | |
| #define | LSST_NESTED_CONTROL_FIELD(NAME, MODULE, TYPE, DOC) |
| A preprocessor macro used to define fields in C++ "control object" structs, for nested control objects. More... | |
| #define LSST_CONTROL_FIELD | ( | NAME, | |
| TYPE, | |||
| DOC | |||
| ) |
A preprocessor macro used to define fields in C++ "control object" structs.
These objects can then be wrapped into full-fledged Config objects by the functions in lsst.pex.config.wrap.
The defaults for the config class will be set properly if and only if the control class is default-constructable.
See lsst.pex.config.wrap.makeConfigClass for a complete example of how to use this macro.
| #define LSST_NESTED_CONTROL_FIELD | ( | NAME, | |
| MODULE, | |||
| TYPE, | |||
| DOC | |||
| ) |
A preprocessor macro used to define fields in C++ "control object" structs, for nested control objects.
These can be wrapped into Config objects by the functions in lsst.pex.config.wrap.
The nested object will be held as a regular, by-value data member (there's currently no way to use smart pointers or getters/setters instead).
The nested control object class must also be wrapped into a config object, and the Python module of the swigged nested control object must be passed as the MODULE argument to the macro. When a wrapped control object is used as a nested field in the same package it is defined in, the MODULE argument must refer to the actual Swig-generated module, not the just the package, even if the name is lifted into the package namespace.
See lsst.pex.config.wrap.makeConfigClass for a complete example of how to use this macro.
1.8.5