LSSTApplications  10.0+286,10.0+36,10.0+46,10.0-2-g4f67435,10.1+152,10.1+37,11.0,11.0+1,11.0-1-g47edd16,11.0-1-g60db491,11.0-1-g7418c06,11.0-2-g04d2804,11.0-2-g68503cd,11.0-2-g818369d,11.0-2-gb8b8ce7
LSSTDataManagementBasePackage
Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
lsst::afw::math::detail::KernelImagesForRegion Class Reference

#include <Convolve.h>

Inheritance diagram for lsst::afw::math::detail::KernelImagesForRegion:
lsst::daf::base::Citizen lsst::daf::base::Persistable

Public Types

enum  Location { BOTTOM_LEFT, BOTTOM_RIGHT, TOP_LEFT, TOP_RIGHT }
 
typedef boost::shared_ptr
< lsst::afw::math::Kernel
const > 
KernelConstPtr
 
typedef
lsst::afw::image::Image
< lsst::afw::math::Kernel::Pixel
Image
 
typedef boost::shared_ptr< ImageImagePtr
 
typedef boost::shared_ptr
< Image const > 
ImageConstPtr
 
typedef boost::shared_ptr
< KernelImagesForRegion const > 
ConstPtr
 
typedef boost::shared_ptr
< KernelImagesForRegion
Ptr
 
- Public Types inherited from lsst::daf::base::Citizen
enum  { magicSentinel = 0xdeadbeef }
 
typedef unsigned long memId
 Type of the block's ID. More...
 
typedef memId(* memNewCallback )(const memId cid)
 A function used to register a callback. More...
 
typedef memId(* memCallback )(const Citizen *ptr)
 
- Public Types inherited from lsst::daf::base::Persistable
typedef boost::shared_ptr
< Persistable
Ptr
 

Public Member Functions

 KernelImagesForRegion (KernelConstPtr kernelPtr, lsst::afw::geom::Box2I const &bbox, lsst::afw::geom::Point2I const &xy0, bool doNormalize)
 
 KernelImagesForRegion (KernelConstPtr kernelPtr, lsst::afw::geom::Box2I const &bbox, lsst::afw::geom::Point2I const &xy0, bool doNormalize, ImagePtr bottomLeftImagePtr, ImagePtr bottomRightImagePtr, ImagePtr topLeftImagePtr, ImagePtr topRightImagePtr)
 
lsst::afw::geom::Box2I getBBox () const
 
lsst::afw::geom::Point2I getXY0 () const
 
bool getDoNormalize () const
 
ImagePtr getImage (Location location) const
 
KernelConstPtr getKernel () const
 
lsst::afw::geom::Point2I getPixelIndex (Location location) const
 
bool computeNextRow (RowOfKernelImagesForRegion &regionRow) const
 Compute next row of subregions. More...
 
- Public Member Functions inherited from lsst::daf::base::Citizen
 Citizen (const std::type_info &)
 
 Citizen (Citizen const &)
 
 ~Citizen ()
 
Citizenoperator= (Citizen const &)
 
std::string repr () const
 Return a string representation of a Citizen. More...
 
void markPersistent (void)
 Mark a Citizen as persistent and not destroyed until process end. More...
 
memId getId () const
 Return the Citizen's ID. More...
 
- Public Member Functions inherited from lsst::daf::base::Persistable
 Persistable (void)
 
virtual ~Persistable (void)
 
template<class Archive >
void serialize (Archive &, unsigned int const)
 

Static Public Member Functions

static int getMinInterpolationSize ()
 
- Static Public Member Functions inherited from lsst::daf::base::Citizen
static bool hasBeenCorrupted ()
 Check all allocated blocks for corruption. More...
 
static memId getNextMemId ()
 Return the memId of the next object to be allocated. More...
 
static int init ()
 Called once when the memory system is being initialised. More...
 
static int census (int, memId startingMemId=0)
 How many active Citizens are there? More...
 
static void census (std::ostream &stream, memId startingMemId=0)
 Print a list of all active Citizens to stream, sorted by ID. More...
 
static const std::vector
< const Citizen * > * 
census ()
 Return a (newly allocated) std::vector of active Citizens sorted by ID. More...
 
static memId setNewCallbackId (memId id)
 Call the NewCallback when block is allocated. More...
 
static memId setDeleteCallbackId (memId id)
 Call the current DeleteCallback when block is deleted. More...
 
static memNewCallback setNewCallback (memNewCallback func)
 Set the NewCallback function. More...
 
static memCallback setDeleteCallback (memCallback func)
 Set the DeleteCallback function. More...
 
static memCallback setCorruptionCallback (memCallback func)
 Set the CorruptionCallback function. More...
 

Private Types

typedef std::vector< LocationLocationList
 

Private Member Functions

void _computeImage (Location location) const
 
void _insertImage (Location location, ImagePtr imagePtr) const
 
void _moveUp (bool isFirst, int newHeight)
 Move the region up one segment. More...
 

Static Private Member Functions

static int _computeNextSubregionLength (int length, int nDivisions)
 
static std::vector< int > _computeSubregionLengths (int length, int nDivisions)
 

Private Attributes

KernelConstPtr _kernelPtr
 
lsst::afw::geom::Box2I _bbox
 
lsst::afw::geom::Point2I _xy0
 
bool _doNormalize
 
std::vector< ImagePtr_imagePtrList
 

Static Private Attributes

static int const _MinInterpolationSize = 10
 

Detailed Description

A collection of Kernel images for special locations on a rectangular region of an image

See the Location enum for a list of those special locations.

Warning
The kernel images along the top and right edges are computed one row or column past the bounding box. This allows abutting KernelImagesForRegion to share corner and edge kernel images, which is useful when dividing a KernelImagesForRegion into subregions.
The bounding box for the region applies to the parent image.

This is a low-level helper class for recursive convolving with interpolation. Many of these objects may be created during a convolution, and many will share kernel images. It uses shared pointers to kernels and kernel images for increased speed and decreased memory usage (at the expense of safety). Note that null pointers are NOT acceptable for the constructors!

Also note that it uses lazy evaluation: images are computed when they are wanted.

Definition at line 111 of file Convolve.h.

Member Typedef Documentation

Definition at line 120 of file Convolve.h.

Definition at line 117 of file Convolve.h.

Definition at line 119 of file Convolve.h.

Definition at line 118 of file Convolve.h.

Definition at line 116 of file Convolve.h.

Definition at line 178 of file Convolve.h.

Definition at line 121 of file Convolve.h.

Member Enumeration Documentation

locations of various points in the region

RIGHT and TOP are one column/row beyond the region's bounding box. Thus adjacent regions share corner images.

The posiitions are: BOTTOM_LEFT, BOTTOM_RIGHT, TOP_LEFT, TOP_RIGHT

These locations always refer to the center of a pixel. Thus if the region has an odd size along an axis (so that the span to the top and right, which are one beyond, is even), the middle pixel will be 1/2 pixel off from the true center along that axis (in an unspecified direction).

Enumerator
BOTTOM_LEFT 
BOTTOM_RIGHT 
TOP_LEFT 
TOP_RIGHT 

Definition at line 136 of file Convolve.h.

Constructor & Destructor Documentation

lsst::afw::math::detail::KernelImagesForRegion::KernelImagesForRegion ( KernelConstPtr  kernelPtr,
lsst::afw::geom::Box2I const &  bbox,
lsst::afw::geom::Point2I const &  xy0,
bool  doNormalize 
)

Construct a KernelImagesForRegion

Exceptions
lsst::pex::exceptions::InvalidParameterErrorif kernelPtr is null
Parameters
kernelPtrkernel
bboxbounding box of region of an image for which we want to compute kernel images (inclusive and relative to parent image)
xy0xy0 of image for which we want to compute kernel images
doNormalizenormalize the kernel images?

Definition at line 59 of file KernelImagesForRegion.cc.

66 :
67  lsst::daf::base::Citizen(typeid(this)),
68  _kernelPtr(kernelPtr),
69  _bbox(bbox),
70  _xy0(xy0),
71  _doNormalize(doNormalize),
72  _imagePtrList(4)
73 {
74  if (!_kernelPtr) {
75  throw LSST_EXCEPT(pexExcept::InvalidParameterError, "kernelPtr is null");
76  }
77  pexLog::TTrace<6>("lsst.afw.math.convolve",
78  "KernelImagesForRegion(bbox(minimum=(%d, %d), extent=(%d, %d)), xy0=(%d, %d), doNormalize=%d, images...)",
80 }
int getMinY() const
Definition: Box.h:125
int getMinX() const
Definition: Box.h:124
int getWidth() const
Definition: Box.h:154
#define LSST_EXCEPT(type,...)
Definition: Exception.h:46
int getHeight() const
Definition: Box.h:155
Citizen is a class that should be among all LSST classes base classes, and handles basic memory manag...
Definition: Citizen.h:56
lsst::afw::math::detail::KernelImagesForRegion::KernelImagesForRegion ( KernelConstPtr  kernelPtr,
lsst::afw::geom::Box2I const &  bbox,
lsst::afw::geom::Point2I const &  xy0,
bool  doNormalize,
ImagePtr  bottomLeftImagePtr,
ImagePtr  bottomRightImagePtr,
ImagePtr  topLeftImagePtr,
ImagePtr  topRightImagePtr 
)

Construct a KernelImagesForRegion with some or all corner images

Null corner image pointers are ignored.

Warning
: if any images are incorrect you will get a mess.
Exceptions
lsst::pex::exceptions::InvalidParameterErrorif kernelPtr is null
lsst::pex::exceptions::InvalidParameterErrorif an image has the wrong dimensions
Parameters
kernelPtrkernel
bboxbounding box of region of an image for which we want to compute kernel images (inclusive and relative to parent image)
xy0xy0 of image
doNormalizenormalize the kernel images?
bottomLeftImagePtrkernel image and sum at bottom left of region
bottomRightImagePtrkernel image and sum at bottom right of region
topLeftImagePtrkernel image and sum at top left of region
topRightImagePtrkernel image and sum at top right of region

Definition at line 92 of file KernelImagesForRegion.cc.

103 :
104  lsst::daf::base::Citizen(typeid(this)),
105  _kernelPtr(kernelPtr),
106  _bbox(bbox),
107  _xy0(xy0),
108  _doNormalize(doNormalize),
109  _imagePtrList(4)
110 {
111  if (!_kernelPtr) {
112  throw LSST_EXCEPT(pexExcept::InvalidParameterError, "kernelPtr is null");
113  }
114  _insertImage(BOTTOM_LEFT, bottomLeftImagePtr);
115  _insertImage(BOTTOM_RIGHT, bottomRightImagePtr);
116  _insertImage(TOP_LEFT, topLeftImagePtr);
117  _insertImage(TOP_RIGHT, topRightImagePtr);
118  pexLog::TTrace<6>("lsst.afw.math.convolve",
119  "KernelImagesForRegion(bbox(minimum=(%d, %d), extent=(%d, %d)), xy0=(%d, %d), doNormalize=%d, images...)",
121 }
void _insertImage(Location location, ImagePtr imagePtr) const
Definition: Convolve.h:318
int getMinY() const
Definition: Box.h:125
int getMinX() const
Definition: Box.h:124
int getWidth() const
Definition: Box.h:154
#define LSST_EXCEPT(type,...)
Definition: Exception.h:46
int getHeight() const
Definition: Box.h:155
Citizen is a class that should be among all LSST classes base classes, and handles basic memory manag...
Definition: Citizen.h:56

Member Function Documentation

void lsst::afw::math::detail::KernelImagesForRegion::_computeImage ( Location  location) const
private

Compute image at a particular location

Exceptions
lsst::pex::exceptions::NotFoundErrorif there is no pointer at that location

Definition at line 250 of file KernelImagesForRegion.cc.

250  {
251  ImagePtr imagePtr = _imagePtrList[location];
252  if (!imagePtr) {
253  std::ostringstream os;
254  os << "Null imagePtr at location " << location;
255  throw LSST_EXCEPT(pexExcept::NotFoundError, os.str());
256  }
257 
258  afwGeom::Point2I pixelIndex = getPixelIndex(location);
259  _kernelPtr->computeImage(
260  *imagePtr,
261  _doNormalize,
262  afwImage::indexToPosition(pixelIndex.getX() + _xy0[0]),
263  afwImage::indexToPosition(pixelIndex.getY() + _xy0[1]));
264 }
boost::shared_ptr< Image > ImagePtr
Definition: Convolve.h:118
double indexToPosition(double ind)
Convert image index to image position.
Definition: ImageUtils.h:54
lsst::afw::geom::Point2I getPixelIndex(Location location) const
#define LSST_EXCEPT(type,...)
Definition: Exception.h:46
int lsst::afw::math::detail::KernelImagesForRegion::_computeNextSubregionLength ( int  length,
int  nDivisions 
)
inlinestaticprivate

Compute length of next subregion if the region is to be divided into pieces of approximately equal length.

Returns
length of next subregion
Warning
: no range checking
Parameters
lengthlength of region
nDivisionsnumber of divisions of region

Definition at line 304 of file Convolve.h.

307 {
308  return static_cast<int>(std::floor(0.5 +
309  (static_cast<double>(length) / static_cast<double>(nDivisions))));
310 }
Extent< int, N > floor(Extent< double, N > const &input)
std::vector< int > lsst::afw::math::detail::KernelImagesForRegion::_computeSubregionLengths ( int  length,
int  nDivisions 
)
staticprivate

Compute length of each subregion for a region divided into nDivisions pieces of approximately equal length.

Returns
a list of subspan lengths
Exceptions
lsst::pex::exceptions::InvalidParameterErrorif nDivisions >= length
Parameters
lengthlength of region
nDivisionsnumber of divisions of region

Definition at line 274 of file KernelImagesForRegion.cc.

277 {
278  if ((nDivisions > length) || (nDivisions < 1)) {
279  std::ostringstream os;
280  os << "nDivisions = " << nDivisions << " not in range [1, " << length << " = length]";
281  throw LSST_EXCEPT(pexExcept::InvalidParameterError, os.str());
282  }
283  std::vector<int> regionLengths;
284  int remLength = length;
285  for (int remNDiv = nDivisions; remNDiv > 0; --remNDiv) {
286  int subLength = _computeNextSubregionLength(remLength, remNDiv);
287  if (subLength < 1) {
288  std::ostringstream os;
289  os << "Bug! _computeSubregionLengths(length=" << length << ", nDivisions=" << nDivisions <<
290  ") computed sublength = " << subLength << " < 0; remLength = " << remLength;
291  throw LSST_EXCEPT(pexExcept::RuntimeError, os.str());
292  }
293  regionLengths.push_back(subLength);
294  remLength -= subLength;
295  }
296  return regionLengths;
297 }
#define LSST_EXCEPT(type,...)
Definition: Exception.h:46
static int _computeNextSubregionLength(int length, int nDivisions)
Definition: Convolve.h:304
void lsst::afw::math::detail::KernelImagesForRegion::_insertImage ( Location  location,
ImagePtr  imagePtr 
) const
inlineprivate

Insert an image in the cache.

Exceptions
lsst::pex::exceptions::InvalidParameterErrorif image pointer is null
lsst::pex::exceptions::InvalidParameterErrorif image has the wrong dimensions
Parameters
locationlocation at which to insert image
imagePtrimage to insert

Definition at line 318 of file Convolve.h.

321  {
322  if (imagePtr) {
323  if (_kernelPtr->getDimensions() != imagePtr->getDimensions()) {
324  std::ostringstream os;
325  os << "image dimensions = ( "
326  << imagePtr->getWidth() << ", " << imagePtr->getHeight()
327  << ") != (" << _kernelPtr->getWidth() << ", " << _kernelPtr->getHeight()
328  << ") = kernel dimensions";
329  throw LSST_EXCEPT(lsst::pex::exceptions::InvalidParameterError, os.str());
330  }
331  _imagePtrList[location] = imagePtr;
332  }
333 }
#define LSST_EXCEPT(type,...)
Definition: Exception.h:46
void lsst::afw::math::detail::KernelImagesForRegion::_moveUp ( bool  isFirst,
int  newHeight 
)
private

Move the region up one segment.

To avoid reallocating memory for kernel images, swap the top and bottom kernel image pointers and recompute the top images. Actually, only does this to the right-hande images if isFirst is false since it assumes the left images were already handled.

Intended to support computeNextRow; as such assumes that a list of adjacent regions will be moved, left to right.

Parameters
isFirsttrue if the first region in a row (or the only region you are moving)
newHeightnew height of region

Definition at line 309 of file KernelImagesForRegion.cc.

312 {
313  // move bbox up (this must be done before recomputing the top kernel images)
316  afwGeom::Extent2I(_bbox.getWidth(), newHeight));
317 
318  // swap top and bottom image pointers
321 
322  // recompute top right, and if the first image also recompute top left
323  _computeImage(TOP_RIGHT);
324  if (isFirst) {
325  _computeImage(TOP_LEFT);
326  }
327 }
int getMaxY() const
Definition: Box.h:129
An integer coordinate rectangle.
Definition: Box.h:53
int getMinX() const
Definition: Box.h:124
int getWidth() const
Definition: Box.h:154
bool lsst::afw::math::detail::KernelImagesForRegion::computeNextRow ( RowOfKernelImagesForRegion regionRow) const

Compute next row of subregions.

For the first row call with a new RowOfKernelImagesForRegion (with the desired number of columns and rows). Every subequent call updates the data in the RowOfKernelImagesForRegion.

Returns
true if a new row was computed, false if supplied RowOfKernelImagesForRegion is for the last row.
Parameters
regionRowRowOfKernelImagesForRegion object

Definition at line 177 of file KernelImagesForRegion.cc.

179  {
180  if (regionRow.isLastRow()) {
181  return false;
182  }
183 
184  bool hasData = regionRow.hasData();
185  int startY;
186  if (hasData) {
187  startY = regionRow.front()->getBBox().getMaxY() + 1;
188  } else {
189  startY = this->_bbox.getMinY();
190  }
191 
192  int yInd = regionRow.incrYInd();
193  int remHeight = 1 + this->_bbox.getMaxY() - startY;
194  int remYDiv = regionRow.getNY() - yInd;
195  int height = _computeNextSubregionLength(remHeight, remYDiv);
196 
197  if (hasData) {
198  // Move each region up one segment
199  bool isFirst = true;
200  for (RowOfKernelImagesForRegion::Iterator rgnIter = regionRow.begin(), rgnEnd = regionRow.end();
201  rgnIter != rgnEnd; ++rgnIter) {
202  (*rgnIter)->_moveUp(isFirst, height);
203  isFirst = false;
204  }
205 
206  } else {
207  ImagePtr blImagePtr = getImage(BOTTOM_LEFT);
208  ImagePtr brImagePtr;
209  ImagePtr tlImagePtr;
210  ImagePtr const trImageNullPtr;
211 
212  afwGeom::Point2I blCorner = afwGeom::Point2I(this->_bbox.getMinX(), startY);
213 
214  int remWidth = this->_bbox.getWidth();
215  int remXDiv = regionRow.getNX();
216  for (RowOfKernelImagesForRegion::Iterator rgnIter = regionRow.begin(), rgnEnd = regionRow.end();
217  rgnIter != rgnEnd; ++rgnIter) {
218  int width = _computeNextSubregionLength(remWidth, remXDiv);
219  --remXDiv;
220  remWidth -= width;
221 
223  _kernelPtr,
224  afwGeom::Box2I(blCorner, afwGeom::Extent2I(width, height)),
225  _xy0,
226  _doNormalize,
227  blImagePtr,
228  brImagePtr,
229  tlImagePtr,
230  trImageNullPtr));
231  *rgnIter = regionPtr;
232 
233  if (!tlImagePtr) {
234  regionPtr->getImage(TOP_LEFT);
235  }
236 
237  blCorner += afwGeom::Extent2I(width, 0);
238  blImagePtr = regionPtr->getImage(BOTTOM_RIGHT);
239  tlImagePtr = regionPtr->getImage(TOP_RIGHT);
240  }
241  }
242  return true;
243 }
int getMaxY() const
Definition: Box.h:129
boost::shared_ptr< KernelImagesForRegion > Ptr
Definition: Convolve.h:121
boost::shared_ptr< Image > ImagePtr
Definition: Convolve.h:118
Point< int, 2 > Point2I
Definition: Point.h:283
Extent< int, 2 > Extent2I
Definition: Extent.h:355
An integer coordinate rectangle.
Definition: Box.h:53
void ImageT ImageT int float saturatedPixelValue int const width
Definition: saturated.cc:44
int getMinY() const
Definition: Box.h:125
int getMinX() const
Definition: Box.h:124
void ImageT ImageT int float saturatedPixelValue int const height
Definition: saturated.cc:44
int getWidth() const
Definition: Box.h:154
KernelImagesForRegion(KernelConstPtr kernelPtr, lsst::afw::geom::Box2I const &bbox, lsst::afw::geom::Point2I const &xy0, bool doNormalize)
static int _computeNextSubregionLength(int length, int nDivisions)
Definition: Convolve.h:304
lsst::afw::geom::Box2I lsst::afw::math::detail::KernelImagesForRegion::getBBox ( ) const
inline

Get the bounding box for the region

Definition at line 158 of file Convolve.h.

158 { return _bbox; };
bool lsst::afw::math::detail::KernelImagesForRegion::getDoNormalize ( ) const
inline

Get the doNormalize parameter

Definition at line 166 of file Convolve.h.

mathDetail::KernelImagesForRegion::ImagePtr lsst::afw::math::detail::KernelImagesForRegion::getImage ( Location  location) const

Return the image and sum at the specified location

If the image has not yet been computed, it is computed at this time.

Parameters
locationlocation of image

Definition at line 128 of file KernelImagesForRegion.cc.

130  {
131  if (_imagePtrList[location]) {
132  return _imagePtrList[location];
133  }
134 
135  ImagePtr imagePtr(new Image(_kernelPtr->getDimensions()));
136  _imagePtrList[location] = imagePtr;
137  _computeImage(location);
138  return imagePtr;
139 }
boost::shared_ptr< Image > ImagePtr
Definition: Convolve.h:118
lsst::afw::image::Image< lsst::afw::math::Kernel::Pixel > Image
Definition: Convolve.h:117
KernelConstPtr lsst::afw::math::detail::KernelImagesForRegion::getKernel ( ) const
inline

Get the kernel (as a shared pointer to const)

Definition at line 171 of file Convolve.h.

171 { return _kernelPtr; };
static int lsst::afw::math::detail::KernelImagesForRegion::getMinInterpolationSize ( )
inlinestatic

Get the minInterpolationSize class constant

Definition at line 178 of file Convolve.h.

178 { return _MinInterpolationSize; };
lsst::afw::geom::Point2I lsst::afw::math::detail::KernelImagesForRegion::getPixelIndex ( Location  location) const

Compute pixel index of a given location, relative to the parent image (thus offset by bottom left corner of bounding box)

Parameters
locationlocation for which to return pixel index

Definition at line 145 of file KernelImagesForRegion.cc.

147  {
148  switch (location) {
149  case BOTTOM_LEFT:
150  return _bbox.getMin();
151  break; // paranoia
152  case BOTTOM_RIGHT:
153  return afwGeom::Point2I(_bbox.getMaxX() + 1, _bbox.getMinY());
154  break; // paranoia
155  case TOP_LEFT:
156  return afwGeom::Point2I(_bbox.getMinX(), _bbox.getMaxY() + 1);
157  break; // paranoia
158  case TOP_RIGHT:
159  return afwGeom::Point2I(_bbox.getMaxX() + 1, _bbox.getMaxY() + 1);
160  break; // paranoia
161  default: {
162  std::ostringstream os;
163  os << "Bug: unhandled location = " << location;
164  throw LSST_EXCEPT(pexExcept::InvalidParameterError, os.str());
165  }
166  }
167 }
int getMaxY() const
Definition: Box.h:129
Point< int, 2 > Point2I
Definition: Point.h:283
int getMinY() const
Definition: Box.h:125
int getMinX() const
Definition: Box.h:124
#define LSST_EXCEPT(type,...)
Definition: Exception.h:46
int getMaxX() const
Definition: Box.h:128
Point2I const getMin() const
Definition: Box.h:123
lsst::afw::geom::Point2I lsst::afw::math::detail::KernelImagesForRegion::getXY0 ( ) const
inline

Get xy0 of the image

Definition at line 162 of file Convolve.h.

162 { return _xy0; };

Member Data Documentation

lsst::afw::geom::Box2I lsst::afw::math::detail::KernelImagesForRegion::_bbox
private

Definition at line 192 of file Convolve.h.

bool lsst::afw::math::detail::KernelImagesForRegion::_doNormalize
private

Definition at line 194 of file Convolve.h.

std::vector<ImagePtr> lsst::afw::math::detail::KernelImagesForRegion::_imagePtrList
mutableprivate

Definition at line 195 of file Convolve.h.

KernelConstPtr lsst::afw::math::detail::KernelImagesForRegion::_kernelPtr
private

Definition at line 191 of file Convolve.h.

int const lsst::afw::math::detail::KernelImagesForRegion::_MinInterpolationSize = 10
staticprivate

Definition at line 197 of file Convolve.h.

lsst::afw::geom::Point2I lsst::afw::math::detail::KernelImagesForRegion::_xy0
private

Definition at line 193 of file Convolve.h.


The documentation for this class was generated from the following files: