Template Class HeavyFootprint

Inheritance Relationships

Base Types

Class Documentation

template<typename ImagePixelT, typename MaskPixelT = lsst::afw::image::MaskPixel, typename VariancePixelT = lsst::afw::image::VariancePixel>
class HeavyFootprint : public lsst::afw::table::io::PersistableFacade<HeavyFootprint<ImagePixelT, MaskPixelT, VariancePixelT>>, public lsst::afw::detection::Footprint

A set of pixels in an Image, including those pixels’ actual values

Public Functions

HeavyFootprint(Footprint const &foot, lsst::afw::image::MaskedImage<ImagePixelT, MaskPixelT, VariancePixelT> const &mimage, HeavyFootprintCtrl const *ctrl = NULL)

Create a HeavyFootprint from a regular Footprint and the image that provides the pixel values

Note

the HeavyFootprintCtrl is passed by const* not const& so that we needn’t provide a definition in the header.

Parameters
  • foot: The Footprint defining the pixels to set

  • mimage: The pixel values

  • ctrl: Control how we manipulate HeavyFootprints

HeavyFootprint(Footprint const &foot, HeavyFootprintCtrl const *ctrl = NULL)

Create a HeavyFootprint from a regular Footprint, allocating space to hold foot.getArea() pixels, but not initializing them. This is used when unpersisting a HeavyFootprint.

Parameters
  • foot: The Footprint defining the pixels to set

  • ctrl: Control how we manipulate HeavyFootprints

HeavyFootprint()

Default constructor for HeavyFootprint. Most common use for this will be in combination with the assignment operator

~HeavyFootprint()
HeavyFootprint(HeavyFootprint const &other)
HeavyFootprint(HeavyFootprint &&other)
HeavyFootprint &operator=(HeavyFootprint const&)
HeavyFootprint &operator=(HeavyFootprint&&)
bool isHeavy() const

Is this a HeavyFootprint (yes!)

void insert(lsst::afw::image::MaskedImage<ImagePixelT, MaskPixelT, VariancePixelT> &mimage) const

Replace all the pixels in the image with the values in the HeavyFootprint.

void insert(lsst::afw::image::Image<ImagePixelT> &image) const

Replace all the pixels in the image with the values in the HeavyFootprint.

Parameters
  • [out] image: Image to set

ndarray::Array<ImagePixelT, 1, 1> getImageArray()
ndarray::Array<MaskPixelT, 1, 1> getMaskArray()
ndarray::Array<VariancePixelT, 1, 1> getVarianceArray()
ndarray::Array<ImagePixelT const, 1, 1> getImageArray() const
ndarray::Array<MaskPixelT const, 1, 1> getMaskArray() const
ndarray::Array<VariancePixelT const, 1, 1> getVarianceArray() const
MaskPixelT getMaskBitsSet() const
double dot(HeavyFootprint<ImagePixelT, MaskPixelT, VariancePixelT> const &other) const

Dot product between HeavyFootprints

The mask and variance planes are ignored.

Protected Functions

std::string getPersistenceName() const

Return the name correspoinging ot the persistence type

void write(OutputArchiveHandle &handle) const

Write an instance of a Footprint to an output Archive