LSST Applications  21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
Public Types | Public Member Functions | List of all members
lsst::afw::geom::details::ImageNdGetter< T, N, C > Class Template Referencefinal

#include <SpanSetFunctorGetters.h>

Public Types

using Reference = typename ndarray::Array< T, N, C >::Reference::Reference
 

Public Member Functions

 ImageNdGetter (ndarray::Array< T, N, C > const &array, lsst::geom::Point2I const &xy0)
 
 ImageNdGetter (ImageNdGetter const &)=default
 
 ImageNdGetter (ImageNdGetter &&)=default
 
ImageNdGetteroperator= (ImageNdGetter const &)=default
 
ImageNdGetteroperator= (ImageNdGetter &&)=default
 
 ~ImageNdGetter ()=default
 
void checkExtents (lsst::geom::Box2I const &bbox, int area) const
 
void setSpan (Span const &span)
 
void increment ()
 
Reference get ()
 

Detailed Description

template<typename T, int N, int C>
class lsst::afw::geom::details::ImageNdGetter< T, N, C >

Definition at line 155 of file SpanSetFunctorGetters.h.

Member Typedef Documentation

◆ Reference

template<typename T , int N, int C>
using lsst::afw::geom::details::ImageNdGetter< T, N, C >::Reference = typename ndarray::Array<T, N, C>::Reference::Reference

Definition at line 158 of file SpanSetFunctorGetters.h.

Constructor & Destructor Documentation

◆ ImageNdGetter() [1/3]

template<typename T , int N, int C>
lsst::afw::geom::details::ImageNdGetter< T, N, C >::ImageNdGetter ( ndarray::Array< T, N, C > const &  array,
lsst::geom::Point2I const &  xy0 
)
inline

Definition at line 160 of file SpanSetFunctorGetters.h.

161  : _array(array), _xy0(xy0) {}

◆ ImageNdGetter() [2/3]

template<typename T , int N, int C>
lsst::afw::geom::details::ImageNdGetter< T, N, C >::ImageNdGetter ( ImageNdGetter< T, N, C > const &  )
default

◆ ImageNdGetter() [3/3]

template<typename T , int N, int C>
lsst::afw::geom::details::ImageNdGetter< T, N, C >::ImageNdGetter ( ImageNdGetter< T, N, C > &&  )
default

◆ ~ImageNdGetter()

template<typename T , int N, int C>
lsst::afw::geom::details::ImageNdGetter< T, N, C >::~ImageNdGetter ( )
default

Member Function Documentation

◆ checkExtents()

template<typename T , int N, int C>
void lsst::afw::geom::details::ImageNdGetter< T, N, C >::checkExtents ( lsst::geom::Box2I const &  bbox,
int  area 
) const
inline

Definition at line 169 of file SpanSetFunctorGetters.h.

169  {
170  // If the bounding box lays outside the are of the image, throw an error
171  lsst::geom::Box2I arrayBBox(
172  _xy0, lsst::geom::Extent2I(_array.template getSize<1>(), _array.template getSize<0>()));
173  if (!arrayBBox.contains(bbox)) {
175  "SpanSet bounding box lands outside array");
176  }
177  }
AmpInfoBoxKey bbox
Definition: Amplifier.cc:117
#define LSST_EXCEPT(type,...)
Create an exception with a given type.
Definition: Exception.h:48
An integer coordinate rectangle.
Definition: Box.h:55
Reports attempts to access elements outside a valid range of indices.
Definition: Runtime.h:89

◆ get()

template<typename T , int N, int C>
Reference lsst::afw::geom::details::ImageNdGetter< T, N, C >::get ( )
inline

Definition at line 186 of file SpanSetFunctorGetters.h.

186 { return *_iterX; }

◆ increment()

template<typename T , int N, int C>
void lsst::afw::geom::details::ImageNdGetter< T, N, C >::increment ( )
inline

Definition at line 184 of file SpanSetFunctorGetters.h.

184 { ++_iterX; }

◆ operator=() [1/2]

template<typename T , int N, int C>
ImageNdGetter& lsst::afw::geom::details::ImageNdGetter< T, N, C >::operator= ( ImageNdGetter< T, N, C > &&  )
default

◆ operator=() [2/2]

template<typename T , int N, int C>
ImageNdGetter& lsst::afw::geom::details::ImageNdGetter< T, N, C >::operator= ( ImageNdGetter< T, N, C > const &  )
default

◆ setSpan()

template<typename T , int N, int C>
void lsst::afw::geom::details::ImageNdGetter< T, N, C >::setSpan ( Span const &  span)
inline

Definition at line 179 of file SpanSetFunctorGetters.h.

179  {
180  auto _iterY = _array.begin() + (span.getY() - _xy0.getY());
181  _iterX = (*_iterY).begin() + (span.getMinX() - _xy0.getX());
182  }

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