LSSTApplications  18.0.0+106,18.0.0+50,19.0.0,19.0.0+1,19.0.0+10,19.0.0+11,19.0.0+13,19.0.0+17,19.0.0+2,19.0.0-1-g20d9b18+6,19.0.0-1-g425ff20,19.0.0-1-g5549ca4,19.0.0-1-g580fafe+6,19.0.0-1-g6fe20d0+1,19.0.0-1-g7011481+9,19.0.0-1-g8c57eb9+6,19.0.0-1-gb5175dc+11,19.0.0-1-gdc0e4a7+9,19.0.0-1-ge272bc4+6,19.0.0-1-ge3aa853,19.0.0-10-g448f008b,19.0.0-12-g6990b2c,19.0.0-2-g0d9f9cd+11,19.0.0-2-g3d9e4fb2+11,19.0.0-2-g5037de4,19.0.0-2-gb96a1c4+3,19.0.0-2-gd955cfd+15,19.0.0-3-g2d13df8,19.0.0-3-g6f3c7dc,19.0.0-4-g725f80e+11,19.0.0-4-ga671dab3b+1,19.0.0-4-gad373c5+3,19.0.0-5-ga2acb9c+2,19.0.0-5-gfe96e6c+2,w.2020.01
LSSTDataManagementBasePackage
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
Reports attempts to access elements outside a valid range of indices.
Definition: Runtime.h:89
An integer coordinate rectangle.
Definition: Box.h:55

◆ 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 > const &  )
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 > &&  )
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: