24 #ifndef LSST_MEAS_BASE_ApertureFlux_h_INCLUDED
25 #define LSST_MEAS_BASE_ApertureFlux_h_INCLUDED
38 namespace lsst {
namespace meas {
namespace base {
49 radii, std::vector<double>,
50 "Radius (in pixels) of apertures."
55 "Maximum radius (in pixels) for which the sinc algorithm should be used instead of the "
56 "faster naive algorithm. For elliptical apertures, this is the minor axis radius."
61 "Warping kernel used to shift Sinc photometry coefficients to different center positions"
112 template <
typename T>
118 template <
typename T>
136 template <
typename T>
142 template <
typename T>
162 template <
typename T>
169 template <
typename T>
182 std::string
const &
name,
225 static std::array<FlagDefinition,ApertureFluxAlgorithm::N_FLAGS>
const &
getFlagDefinitions();
266 std::bitset<ApertureFluxAlgorithm::N_FLAGS>
_flags;
300 #endif // !LSST_MEAS_BASE_ApertureFlux_h_INCLUDED
Defines the fields and offsets for a table.
static std::array< FlagDefinition, ApertureFluxAlgorithm::N_FLAGS > const & getFlagDefinitions()
virtual void fail(afw::table::SourceRecord &measRecord, MeasurementError *error=NULL) const
table::Key< std::string > name
A custom container class for records, based on std::vector.
afw::table::Schema schema
SafeCentroidExtractor _centroidExtractor
A mapping between the keys of two Schemas, used to copy data between them.
static Result computeSincFlux(afw::image::Image< T > const &image, afw::geom::ellipses::Ellipse const &ellipse, Control const &ctrl=Control())
std::vector< double > radii
"Radius (in pixels) of apertures." ;
Implementation of the WCS standard for a any projection.
Exception to be thrown when a measurement algorithm experiences a known failure mode.
#define LSST_CONTROL_FIELD(NAME, TYPE, DOC)
double maxSincRadius
"Maximum radius (in pixels) for which the sinc algorithm should be used instead of the " "faster naiv...
FlagHandler const & getFlagHandler(int index) const
ApertureFluxControl Control
Typedef to the control object associated with this algorithm, defined above.
table::Key< table::Array< Kernel::Pixel > > image
void unsetFlag(ApertureFluxAlgorithm::FlagBits bit)
Clear (i.e. set to false) the flag associated with the given bit.
virtual void measure(afw::table::SourceRecord &record, afw::image::Exposure< float > const &exposure) const =0
Custom catalog class for record/table subclasses that are guaranteed to have an ID, and should generally be sorted by that ID.
virtual ~ApertureFluxAlgorithm()
ApertureFluxResult Result
Result object returned by static methods.
An ellipse defined by an arbitrary BaseCore and a center point.
bool getFlag(ApertureFluxAlgorithm::FlagBits bit) const
Return the flag value associated with the given bit.
A class to manipulate images, masks, and variance as a single object.
void copyResultToRecord(Result const &result, afw::table::SourceRecord &record, int index) const
A FunctorKey for FluxResult.
ApertureFluxAlgorithm(Control const &ctrl, std::string const &name, afw::table::Schema &schema, daf::base::PropertySet &metadata)
static std::string makeFieldPrefix(std::string const &name, double radius)
std::bitset< ApertureFluxAlgorithm::N_FLAGS > _flags
void setFlag(ApertureFluxAlgorithm::FlagBits bit, bool value=true)
Set the flag value associated with the given bit.
Class for storing generic metadata.
std::vector< Keys > _keys
Keys(afw::table::Schema &schema, std::string const &prefix, std::string const &doc, bool isSinc)
std::string shiftKernel
"Warping kernel used to shift Sinc photometry coefficients to different center positions" ; ...
Record class that contains measurements made on a single exposure.
static Result computeNaiveFlux(afw::image::Image< T > const &image, afw::geom::ellipses::Ellipse const &ellipse, Control const &ctrl=Control())
A class to represent a 2-dimensional array of pixels.
A reusable result struct for flux measurements.
static Result computeFlux(afw::image::Image< T > const &image, afw::geom::ellipses::Ellipse const &ellipse, Control const &ctrl=Control())