Class BaseTransform¶
Defined in File Transform.h
Inheritance Relationships¶
Derived Types¶
public lsst::meas::base::ApertureFluxTransform
(Class ApertureFluxTransform)public lsst::meas::base::CentroidTransform
(Class CentroidTransform)public lsst::meas::base::FluxTransform
(Class FluxTransform)public lsst::meas::base::SdssShapeTransform
(Class SdssShapeTransform)
Class Documentation¶
-
class
BaseTransform
¶ Abstract base class for all C++ measurement transformations
Measurement plugins return results in raw, uncalibrated units (eg fluxes or positions in pixels). The transformation system provides a mechanism for post-processing those results into a calibrated form (magnitudes, celestial coordinates, etc).
A measurement transformation should derive from BaseTransform. It should implement a constructor which takes three arguments:
A
Control
object describing the configuration of the measurement plugin.The name of the measurement plugin whose outputs are to be transformed (
std::string
);An
lsst::afw::table::SchemaMapper
which links the input and output catalogs;
The constructor should use the SchemaMapper to map fields from the input to output schemas and add additional keys to the output as required. For example:
Derived classes should also implement
operator()
following the interface below. This will be called with a catalog containing the results of the measurement plugin and a catalog to be populated with transformed quantities, as well as WCS and calibration information. For example:Note that it is safe to assume that both catalogs passed to
operator()
are contiguous in memory. It is good practice to ensure that they are equal in size: this may be conveniently achieved by callingBaseTransform::checkCatalogSize()
.operator()
may throwLengthError
if the transformation is impossible to complete. In this case, the contents ofoutputCatalog
is not guaranteed.Subclassed by lsst::meas::base::ApertureFluxTransform, lsst::meas::base::CentroidTransform, lsst::meas::base::FluxTransform, lsst::meas::base::SdssShapeTransform
Public Functions
-
BaseTransform
(std::string const &name)¶
-
virtual
~BaseTransform
()¶
-
virtual void
operator()
(afw::table::SourceCatalog const &inputCatalog, afw::table::BaseCatalog &outputCatalog, afw::geom::SkyWcs const &wcs, afw::image::PhotoCalib const &photoCalib) const = 0¶
Protected Functions
-
void
checkCatalogSize
(afw::table::BaseCatalog const &cat1, afw::table::BaseCatalog const &cat2) const¶ Ensure that catalogs have the same size.
- Parameters
[in] cat1
: Catalog for comparison[in] cat2
: Catalog for comparison
- Exceptions
LengthError
: Catalog sizes do not match
Protected Attributes
-
std::string
_name
¶