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
Controlobject 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::SchemaMapperwhich 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 throwLengthErrorif the transformation is impossible to complete. In this case, the contents ofoutputCatalogis not guaranteed.Subclassed by lsst::meas::base::ApertureFluxTransform, lsst::meas::base::CentroidTransform, lsst::meas::base::FluxTransform, lsst::meas::base::SdssShapeTransform
Public Functions
- 
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