23 #if !defined(LSST_DETECTION_FOOTPRINT_H)
24 #define LSST_DETECTION_FOOTPRINT_H
36 #include <boost/cstdint.hpp>
37 #include <boost/shared_ptr.hpp>
49 namespace lsst {
namespace afw {
namespace detection {
67 typedef boost::shared_ptr<Footprint>
Ptr;
68 typedef boost::shared_ptr<const Footprint>
ConstPtr;
106 virtual bool isHeavy()
const {
return false; }
140 pex::exceptions::LogicError,
141 "Cannot change the PeakCatalog schema unless it is empty"
173 const Span&
addSpan(
const int y,
const int x0,
const int x1);
177 const Span&
addSpan(Span
const& span);
181 const Span&
addSpan(Span
const& span,
int dx,
int dy);
202 void shift(
int dx,
int dy);
222 template<
typename PixelT>
244 template<
typename PixelT>
246 boost::uint64_t
const id,
263 template<
typename PixelT>
265 boost::uint64_t
const id,
266 bool const overwriteId,
long const idMask,
267 typename std::set<boost::uint64_t> *oldIds,
284 template <
typename MaskPixelT>
287 MaskPixelT bitmask=~0
x0
302 geom::Box2I const & region,
418 bool left,
bool right,
bool up,
bool down);
433 template<typename ImageT>
436 typename ImageT::Pixel const value);
443 template<typename ImageT>
446 typename ImageT::Pixel const value);
453 template<typename ImageT>
456 typename ImageT::Pixel const value);
463 template<typename MaskT>
466 MaskT const bitmask);
475 template<typename MaskT>
478 MaskT const bitmask);
493 template <typename ImageOrMaskedImageT>
495 PTR(ImageOrMaskedImageT) const input,
496 PTR(ImageOrMaskedImageT) output);
504 template<typename MaskT>
507 MaskT const bitmask);
514 template<typename MaskT>
517 MaskT const bitmask);
533 template<typename MaskT>
535 typename image::Mask<MaskT>::Ptr const& mask,
536 MaskT const bitmask);
An ellipse core with quadrupole moments as parameters.
Defines the fields and offsets for a table.
void nearestFootprint(std::vector< boost::shared_ptr< Footprint >> const &foots, lsst::afw::image::Image< boost::uint16_t >::Ptr argmin, lsst::afw::image::Image< boost::uint16_t >::Ptr dist)
An include file to include the header files for lsst::afw::geom.
Public header class for ellipse library.
A range of pixels within one row of an Image.
boost::shared_ptr< Footprint > footprintAndMask(boost::shared_ptr< Footprint > const &foot, typename image::Mask< MaskT >::Ptr const &mask, MaskT const bitmask)
Return a Footprint that's the intersection of a Footprint with a Mask.
io::OutputArchiveHandle OutputArchiveHandle
Implementation of the WCS standard for a any projection.
afw::table::CatalogT< PeakRecord > PeakCatalog
boost::shared_ptr< Image< PixelT > > Ptr
An integer coordinate rectangle.
std::map< Citizen const *, CitizenInfo > table
table::Key< table::Array< Kernel::Pixel > > image
A base class for objects that can be persisted via afw::table::io Archive classes.
boost::shared_ptr< Footprint > shrinkFootprint(Footprint const &foot, int nGrow, bool isotropic)
boost::shared_ptr< Footprint > growFootprint(Footprint const &foot, int nGrow, bool isotropic=true)
Represent a 2-dimensional array of bitmask pixels.
An ellipse defined by an arbitrary BaseCore and a center point.
MaskT clearMaskFromFootprint(lsst::afw::image::Mask< MaskT > *mask, Footprint const &footprint, MaskT const bitmask)
(AND ~bitmask) all the Mask's pixels that are in the Footprint; that is, set to zero in the Mask-inte...
ImageT::Pixel setImageFromFootprint(ImageT *image, Footprint const &footprint, typename ImageT::Pixel const value)
Set all image pixels in a Footprint to a given value.
#define LSST_EXCEPT(type,...)
std::vector< lsst::afw::geom::Box2I > footprintToBBoxList(Footprint const &foot)
MaskT setMaskFromFootprint(lsst::afw::image::Mask< MaskT > *mask, Footprint const &footprint, MaskT const bitmask)
OR bitmask into all the Mask's pixels that are in the Footprint.
Implementation of the Class MaskedImage.
Citizen is a class that should be among all LSST classes base classes, and handles basic memory manag...
boost::shared_ptr< Footprint > mergeFootprints(Footprint const &foot1, Footprint const &foot2)
Record class that represents a peak in a Footprint.
A CRTP facade class for subclasses of Persistable.
void copyWithinFootprint(Footprint const &foot, boost::shared_ptr< ImageOrMaskedImageT > const input, boost::shared_ptr< ImageOrMaskedImageT > output)
ImageT::Pixel setImageFromFootprintList(ImageT *image, boost::shared_ptr< std::vector< boost::shared_ptr< Footprint >> const > footprints, typename ImageT::Pixel const value)
Set all image pixels in a set of Footprints to a given value.
MaskT setMaskFromFootprintList(lsst::afw::image::Mask< MaskT > *mask, std::vector< boost::shared_ptr< Footprint >> const &footprints, MaskT const bitmask)
OR bitmask into all the Mask's pixels which are in the set of Footprints.