25 #ifndef LSST_MEAS_ALGORITHMS_FLUXCONTROL_H
26 #define LSST_MEAS_ALGORITHMS_FLUXCONTROL_H
37 namespace algorithms {
78 afw::table::Schema &
schema,
144 afw::table::Schema & schema,
PTR(daf::base::
PropertyList) const & metadata
169 "Name of warping kernel (e.g. \"lanczos4\") used to compute the peak");
176 afw::table::Schema & schema,
PTR(daf::base::
PropertyList) const & metadata
195 afw::table::Schema & schema,
PTR(daf::base::
PropertyList) const & metadata
212 afw::table::Schema & schema,
PTR(daf::base::
PropertyList) const & metadata
230 FluxControl(
"flux.sinc"), radius1(0.0), radius2(7.0), angle(0.0), ellipticity(0.0) {}
235 afw::table::Schema & schema,
PTR(daf::base::
PropertyList) const & metadata
241 #endif // !LSST_MEAS_ALGORITHMS_FLUXCONTROL_H
Defines the fields and offsets for a table.
C++ control object for elliptical aperture fluxes.
KeyTuple const & getKeys() const
Return the standard flux keys registered by this algorithm.
std::string name
Name of the algorithm.
Class for storing ordered metadata with comments.
virtual boost::shared_ptr< AlgorithmControl > _clone() const =0
double priority
"Parameter that sets the sort order for algorithms; lower numbers go first. " "Typically, priority=0 for centroids, 1 for shapes, and 2 for fluxes." ;
ApertureFluxControl(std::string const &name="flux.aperture", float const priority=2.0)
C++ control object for sinc aperture flux.
AlgorithmControl const & getControl() const
Return a clone of the control object used to construct the algorithm.
#define LSST_CONTROL_FIELD(NAME, TYPE, DOC)
boost::shared_ptr< FluxControl > clone() const
std::vector< double > radii
"vector of radii for apertures (in pixels)" ;
Base class for source measurement algorithms.
Base class for measurement algorithm control objects.
virtual boost::shared_ptr< Algorithm > _makeAlgorithm(afw::table::Schema &schema, boost::shared_ptr< daf::base::PropertyList > const &metadata) const
FluxControl(std::string const &name_, double priority=2.0)
C++ control object for PSF flux.
EllipticalApertureFluxControl()
boost::shared_ptr< FluxAlgorithm > makeAlgorithm(afw::table::Schema &schema, boost::shared_ptr< daf::base::PropertyList > const &metadata=boost::shared_ptr< daf::base::PropertyList >(), AlgorithmMap const &others=AlgorithmMap()) const
C++ control object for naive flux.
PeakLikelihoodFluxControl()
FluxControl const & getControl() const
Return a clone of the control object used to construct the algorithm.
tbl::Key< std::string > warpingKernelName
FluxAlgorithm(FluxControl const &ctrl, KeyTuple const &keys)
Initialize with a manually-constructed key tuple.
C++ control object for peak likelihood flux.
virtual boost::shared_ptr< Algorithm > _makeAlgorithm(afw::table::Schema &schema, boost::shared_ptr< daf::base::PropertyList > const &metadata) const
C++ control object for aperture flux.
std::map< std::string, boost::shared_ptr< Algorithm const > > AlgorithmMap
Intermediate base class for algorithms that compute a flux.
afw::table::KeyTuple< afw::table::Flux > KeyTuple
Tuple type that holds the keys that define a standard flux algorithm.
virtual boost::shared_ptr< AlgorithmControl > _clone() const
KeyTuple< lsst::afw::table::Flux > addFluxFields(lsst::afw::table::Schema &schema, std::string const &filter, std::string const &name, std::string const &doc, std::string const &unit)
Convenience function to setup fields for fluxes.